I am looking to create the first data layer at work. We are looking at building an infrastructure for PC, laptops and tablets for creating this whole new system. Currently, we have muilple database servers running that are not mirrored and are setup for cross server queries. The question is how do you setup the servers in relation to a mvc environment?

Something like… 1: webserver that hosts the application? 2: sever to host additional database for this new system. 3. Data layer on the same server as the new database that will have to retrieve minimal data from the existing database?
Do you want your data layer on a seperate server that your database?
50 to 100 employees would be using this new system and will not be exposed to the Internet.
Thank you!
What do you mean with data-layer? Because it sounds like you say it’s another database?
To me, a data-layer is abstraction, in code, of data stores. You basically layer your application into: Presentation, Logic and Data. The presentation layer knows how to present the data to users (or systems using the application). So this can be HTML, but also JSON, if you are building a web service. The logic-layer deals with all the business logic you need and the data-layer knows where and how data is stored, so the logic layer doesn’t need these technical details.
I am looking to create the first data layer at work. We are looking at building an infrastructure for PC, laptops and tablets for creating this whole new system.
Not sure whether you’re asking about server layout or Microservice architecture…

Currently, we have muilple database servers running that are not mirrored and are setup for cross server queries.
Kind of bothers me a little that what I think of as “production” isn’t setup for high availability or failover, but hey to each their own. If you’re using SQL Server, configure the max memory that it can use and define a backup schedule for your databases. Currently what you have is 1 database sending a query to a different server and getting back results – this impacts the SQL plan btw and can impact query performance. Link server queries send that query to the other server and are executed there and return the results.

Something like… 1: webserver that hosts the application? 2: sever to host additional database for this new system. 3. Data layer on the same server as the new database that will have to retrieve minimal data from the existing database?

This makes me think more of a Microservice architecture. You will want a webserver x2 and a database server. One for the UI app, one for the microservice api, and one for the database server.
C# devs
null reference exceptions

source