Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 528031
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 13, 20262026-05-13T08:56:41+00:00 2026-05-13T08:56:41+00:00

I have a project that I have recently started working on seriously but had

  • 0

I have a project that I have recently started working on seriously but had a bit of a design discussion with a friend and I think he raised some interesting points.

The project is designed to be highly scalable and easy to maintain the business objects completely independently. Ease of scalability has forced some of the design decisions that impede the project’s initial efficiency.

The basic design is as follows.

There is a “core” that is written in ASP.NET MVC and manages all interactions JSON API and HTML web. It however doesn’t create or manage “business objects” like Posts, Contributors etc. Those are all handled in their own separate WCF web services.

The idea of the core is to be really simple leveraging individual controls that use management objects to retrieve the business data/objects from the web services. This in turn means that the core could be multithreaded and could call the controls on the page simultaneously.

Each web service will manage the relevant business object and their data in the DB. Any business specific processing will also be in here such as mapping data in the tables to useful data structures for use in the controls. The whole object will be passed to the core, and the core should only be either retrieving or setting a business object once per transaction. If multi-affecting operations are necessary in the future then I will need to make that functionality available.

Also the web services can perform their own independent caching and depending on the request and their own knowledge of their specific area (e.g. Users) could return a newly created object or a pre-created one.

After the talk with my friend I have the following questions.

  1. I appreciate that WCF isn’t as fast as DLL calls or something similar. But how much overhead will there be given that the whole system is based on them?

  2. Creating a thread can be expensive. Will it cost more to do this than just calling all the controls one after another?

  3. Are there any other inherent pit falls that you can see with this design?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-13T08:56:42+00:00Added an answer on May 13, 2026 at 8:56 am

    Do you have any other clients for the web service beyond your web site? If so, then I think that the web service isn’t really needed. A service interface is reasonable, but that doesn’t mean that it needs to be a web service. Using a web service you’ll incur the extra overhead of serialization and one more network transfer of the data. You gain, perhaps, some automatic caching capabilities for your service, but it sounds like you are planning to implement this on your own in any case. It’s hard to quantify the amount of overhead because we don’t know how complex your objects are nor how much data you intend to transfer, but I would wager that it’s not insignificant.

    It it were me, I would simplify the design: go single-threaded, use an embedded service interface. Then, if performance were an issue I’d look to see where I could address the existing performance problems via caching, multiprocessing, etc. This lets the actual application drive the design, though you’d still apply good patterns and practices when the performance issue crops up. In the event that performance doesn’t become an issue, then you haven’t built a lot of complicated infrastructure — YAGNI! You are not gonna need it!

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have recently started working on a very large C++ project that, after completing
I have recently been working with someone on a project that is very ajax
I have a project that I'm currently working on but it currently only supports
I have project that I'm working on that is going to require a webserver.
I have a project that I'm working on and I need to be able
I have a project that I thought was going to be relatively easy, but
Question So I've recently came up with some new possible projects that would have
I have a project that I would like to start beta testing soon, it
We have a project that generates a code snippet that can be used on
I have a project that I am building with Netbeans 6.1 and I am

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.