0

I think this site is about design and best proactive in software engineering as you can see in https://softwareengineering.stackexchange.com/help/on-topic

and question must be good question as you can see in https://softwareengineering.stackexchange.com/help/how-to-ask

For my learning, I need to know about why below question is bad question in this site? (why down vote? and why close? and why delete?)

The below question is close because need focused, but as I know and see link of good question, the definition of Be specific is like below

If you ask a vague question, you’ll get a vague answer. But if you give us details and context, we can provide a useful answer.

and as you can see, and I review many times, my question has details and context, so I do not know, why says this question need more focused and how to resolve this issue? please help me, this question and some other question like this is important to me

thanks

my question is


Hi,

I have many micro services in large enterprise application, each of micro services have below layers

BSN.Resa.MicroServiceName.Commons
BSN.Resa.MicroServiceName.Data
BSN.Resa.MicroServiceName.Domain
BSN.Resa.MicroServiceName.AppService
BSN.Resa.MicroServiceName.Presentation.Dto
BSN.Resa.MicroServiceName.Service

that follow Design a DDD-oriented microservice and onion architecture in layering. (in implementation viewpoint, each layer has organize as separate projects in C# with .NET Standard library project template except Service layer that follow Web API project template.)

The AppService layer has responsibility to define services and provide business logic of services, with below structure. and in implementation point of view is a project library.

enter image description here

The Service layer has responsibility to interconnect to external of this microservice and handle underlying communication technology (such as Web API with Rest). that follow MVC base structure like below

enter image description here

I have one question about this design

  1. In some situation I prefer to use gRPC as technology interface underlying and, in another situation, I prefer to use RESTFul, what is best practice and best design suggest to me to create interchangeable system by config, between them? (I like all of my microservices can speak with RESTFul and gRPC based on configuration) (I need to find best practice for clean code / design about implementing this requirements)

related to How to structure an Onion project

related to best location for communication between microservices in onion layers

related to How to provide Restful Web API and gRPC from one service logic together in right way


end of original question

The above question is close because need focused, but as I know and see link of good question, the definition of Be specific is like below

If you ask a vague question, you’ll get a vague answer. But if you give us details and context, we can provide a useful answer.

and as you can see, and I review many times, my question has details and context, so I do now know, why says this question need more focused and how to resolve this issue? please help me, this question and some other question like this is important to me

thanks

1
  • How can I promote this question to get answer? Commented May 18, 2023 at 17:14

1 Answer 1

3

I think first thing you should try is avoiding to ask for "best practices" and "best design" (see link why). These are vague buzzwords which often trigger downvotes and close votes by our community.

Instead, tell readers specificially and more detailed where you have trouble to make the decision between gRPC and REST configurable. Is there some reason caused by the layering of your application? That could be a start for a making it an answerable question.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .