Replies: 6 comments 7 replies
-
|
Hi @HERCH Thanks for getting in touch. Yes, yes, yes! Good news. You said,
I'm guessing you might mean that in Desktop<->OnPrem systems you don't have the common cloud services, we might be used to seeing, especially the messaging components? In terms of adapting to different environments, that is trivial really, You simply swap out and plugin the technology adapters that you have in your environment - no other code changes. Essentially the architecture as it is, depends on the following list of infrastructure services to operate correctly as designed, albeit, they are all completely technology agnostic:
If memory serves me well, I think everything else that is built in can either be stubbed out, or you can redirect to external 3rd party services, like for Email, Metrics, etc. |
Beta Was this translation helpful? Give feedback.
-
|
Hey @HERCH Take a look at the HttpClient scripts in You will notice that with a user registration (using credentials) that its a multi step process. Whereas registration with SSO is slightly different. Also, if you running locally (on your local machine) we DO NOT have the AzureServiceBus (or equivalent) running, so there is not guaranteed delivery of the events from topics to subscribers. We actually do have a background service that is running in the To your second point. To your third topic. |
Beta Was this translation helpful? Give feedback.
-
|
Hello again @jezzsantos, I am back with some updates. I have now migrated the Azure infrastructure, specifically regarding ServiceBusStore, QueueStore, and BlobStore. I have practically adapted the IDataStore and IEventStore implementations without changes for our on-premises version. Additionally, I have completed the implementation of RabbitMQ and created the integration tests, adding a new emulator for RabbitMQ and replicating the Azure tests. So far, everything is working fine. However, I encountered a small issue, which I describe below: When practically cloning the file and renaming it (from AzureSqlServerStore.IEventStore.cs to SqlServerStore.IEventStore.cs), in lines 54-55:
I am unable to access the resource Common.Resources.EventStore_ConcurrencyVerificationFailed_StreamAlreadyUpdated, as Resources is not accessible. Could you please guide me regarding this point? Thank you in advance. |
Beta Was this translation helpful? Give feedback.
-
|
Hey @HERCH We very recently updated the concurrency handling for the store, and moved this particular resource in that commit: 36b7b77. I am not sure if you are on a fork, or on a clone, the process to update will be different. |
Beta Was this translation helpful? Give feedback.
-
|
Hi @jezzsantos, I’ve created two Pull Requests (PRs) for the integration of the On-Premises version: 1️⃣ First PR: Includes the RabbitMQ emulator setup, persistence implementation, and Service Bus & Queue management. 🔍 Request for Guidance 📌 Main Question: My test worker is currently using localhost:5656, but in my case, I have only implemented the worker with the consumer. I’ll share my progress on the workers so we can stay aligned and discuss the best approach. 📌 Current Code - EmailMessageHandler Thanks in advance for your support! Looking forward to your insights. Best regards, |
Beta Was this translation helpful? Give feedback.
-
|
In the first PR, you mentioned that the implementation of the new assembly didn’t make sense. However, after reviewing the second PR, you reconsidered and stated that the creation of an additional platform called HOSTEDONPREMISES now made sense. What I did was clone the pre-existing Azure project and adjust the AzureServiceBusStore and AzureStorageAccountQueueStore files for implementation using RabbitMQ. Additionally, I modified AzureStorageAccountBlobStore so that storage is handled within a database (DB). After deleting the two previous PRs, new doubts arose due to a comment where you suggested creating a dedicated adapter for RabbitMQ (which I have already implemented). Now, the question is how to handle SQL Server: Should I reuse the Azure implementation (which I don't think is ideal)? |
Beta Was this translation helpful? Give feedback.






Uh oh!
There was an error while loading. Please reload this page.
-
Hello jezzsantos, I’m exploring the SaaStack template on GitHub, and its subdomain-based architecture for a SaaS model caught my attention. I’m starting with an application that will initially be OnPremise, but I’m considering an architecture that allows me to unify the codebase for both OnPremise and Cloud versions.
In our case, we will work with a desktop application that will consume services locally through an IIS server. We understand that opting for an OnPremise approach might result in losing many features typically available in a cloud environment, but our primary focus is on managing repositories, pointing to an MSSQL Server instance.
Is it possible to adapt an architecture like SaaStack’s to support both modes? What recommendations do you have for designing a solution that facilitates this unification without compromising security, scalability, and efficient data management in either environment?
Beta Was this translation helpful? Give feedback.
All reactions