پیاده سازی معماری میکروسرویس در دات نت
200, OK
https://medium.com/@rezamansouri/implementing-microservice-architecture-in-net-part-1-project-overview-2d94b79607e3 icon

پیاده سازی معماری میکروسرویس در دات نت با استفاده از ابزار های

Ocelot For Api Getway

RabbitMQ For Message Broker

JWT Token For Authentication And Authorization

SQL Server And MongoDB For Databases

ASP Core Web Api For Our Rest Api And Swagger As Open API

Google RPC (GRPC) For Transfer Data Between Microservice

Docker For Run Database Services ( SQL Server , MongoDB ) And Message Broker ( RabbitMQ ) 

پیاده سازی معماری میکروسرویس در دات نت
پیاده سازی پروژه API در دات نت ، قسمت ششم ( قسمت آخر ) ، عملیات CRUD در RestAPI پارت دوم
200, OK
https://virgool.io/@reza.mansouri/%D9%BE%DB%8C%D8%A7%D8%AF%D9%87-%D8%B3%D8%A7%D8%B2%DB%8C-%D9%BE%D8%B1%D9%88%DA%98%D9%87-api-%D8%AF%D8%B1-%D8%AF%D8%A7%D8%AA-%D9%86%D8%AA-%D9%82%D8%B3%D9%85%D8%AA-%D9%BE%D9%86%D8%AC%D9%85-%D9%82%D8%B3%D9%85%D8%AA-%D8%A2%D8%AE%D8%B1-%D8%B9%D9%85%D9%84%DB%8C%D8%A7%D8%AA-crud-%D8%AF%D8%B1-restapi-%D9%BE%D8%A7%D8%B1%D8%AA-%D8%AF%D9%88%D9%85-js41fchikfgy icon

در این مقاله‌ی اکشن‌های GetAll Update Delete رو پیاده میکنیم تا عملیات CRUD ما کامل بشه البته سرویس اونها رو داخل UserExamService.cs نوشتیم و فقط باید در کنترلر ExamController اکشن‌های اونها رو کامل کنیم . 

پیاده سازی پروژه API در دات نت ، قسمت ششم ( قسمت آخر ) ، عملیات CRUD در RestAPI پارت دوم
پیاده سازی پروژه API در دات نت ، قسمت پنجم ، عملیات CRUD در RestAPI
200, OK
https://virgool.io/@reza.mansouri/%D9%BE%DB%8C%D8%A7%D8%AF%D9%87-%D8%B3%D8%A7%D8%B2%DB%8C-%D9%BE%D8%B1%D9%88%DA%98%D9%87-api-%D8%AF%D8%B1-%D8%AF%D8%A7%D8%AA-%D9%86%D8%AA-%D9%82%D8%B3%D9%85%D8%AA-%D9%BE%D9%86%D8%AC%D9%85-%D8%B9%D9%85%D9%84%DB%8C%D8%A7%D8%AA-crud-%D8%AF%D8%B1-restapi-h48kzfnquxhb icon

در پایان قسمت قبلی ، عملیات لاگین کاربرانمون با موفقیت انجام شد ، ادامه‌ی کار که اضافه کردن ، ویرایش و حذف موجودیت UserExam یا همون آزمونهای کاربرانمون هستش و نیاز به اعتبار سنجی کاربر هستش رو ادامه میدیم. 

پیاده سازی پروژه API در دات نت ، قسمت پنجم ، عملیات CRUD در RestAPI
پیاده سازی پروژه API در دات نت ، قسمت سوم ، EndPoint توسط RestAPI
200, OK
https://virgool.io/@reza.mansouri/%D9%BE%DB%8C%D8%A7%D8%AF%D9%87-%D8%B3%D8%A7%D8%B2%DB%8C-%D9%BE%D8%B1%D9%88%DA%98%D9%87-api-%D8%AF%D8%B1-%D8%AF%D8%A7%D8%AA-%D9%86%D8%AA-%D9%82%D8%B3%D9%85%D8%AA-%D8%B3%D9%88%D9%85-endpoint-%D8%AA%D9%88%D8%B3%D8%B7-restapi-m3aeltxkr429 icon

در این قسمت میرسیم به قسمت EndPoint یا همون Presentation .

در این پروژه همونطور که قبلتر هم گفتیم میخوایم یک وب سرویس Rest بسازیم . 

پیاده سازی پروژه API در دات نت ، قسمت سوم ، EndPoint توسط RestAPI
پشتیبانی همزمان از REST و gRPC در ASP.NET Core API
200, OK
https://github.com/mafshin/dotnet-core-api-grpc-rest icon
اکثر برنامه نویسان، به احتمال زیاد تاکنون API‌‌های خود را در قالب REST به مشتریان عرضه کرده اند و هم توسعه دهنده و هم خدمات گیرنده از سادگی استفاده از REST API راضی بوده اند. اما در نقطه ای از فرآیند توسعه خود، به جایی می‌رسیم که علاوه بر سادگی توسعه، Performance نقش پررنگی پیدا می‌کند بخصوص با افزایش تعداد Method‌های API و افزایش تعداد مشتریان، آنجاست که CPU سروری که API ما را هاست می‌کند، گاهی به سقف می‌چسبد، ترافیک شبکه به شدت افزایش می‌یابد و در پاسخ به اینکه آیا شما Go Client یا Python Client هم برای API خود دارید، پاسخی جز "خیر" نداریم. اینجاست که جستجو میکنیم و میبینیم راه‌های زیادی پیش روی ماست، یکی از این راه ها، که برای هر سه نیاز فوق پاسخ مناسبی می‌دهد، gRPC هست. نمونه ای عملیاتی از API ای که REST و gRPC را همزمان با هم پشتیبانی کند، در این مخزن گیت هاب  قرار داده ام که می‌توانید برای مقایسه Performance و حجم اطلاعات تبادل شده با هر دو روش از آن استفاده کنید. در این نمونه کد، با فراخوانی یک سرویس ساده، نتایج زیر به دست آمد:
  • سرعت اجرا (سرویس گیرنده): gRPC تقریبا 5 برابر سریعتر از REST پیام‌ها را دریافت کرد.
  • حجم دیتای انتقالی (سرویس گیرنده): حجم پیام‌های gRPC تقریبا نصف REST بود.
پشتیبانی همزمان از REST و gRPC در ASP.NET Core API
ابزار Autorest : کد جنریتوری برای OpenAPI Specification
200, OK
https://github.com/Azure/autorest icon

OpenAPI (f.k.a Swagger) Specification code generator. Supports C#, Go, Java, Node.js, TypeScript, Python, Ruby and PHP. 

AutoRest is an open source tool that generates client libraries for accessing RESTful web services. 

Video Tutorial : https://azure.microsoft.com/en-us/resources/videos/inside-autorest-with-david-justice/ 

ابزار Autorest : کد جنریتوری برای OpenAPI Specification