دانلود کتاب Understanding Distributed Systems: What every developer should know about large distributed applications – درک سیستم های توزیع شده: آنچه که هر توسعه دهنده باید در مورد برنامه های کاربردی توزیع شده بزرگ بداند

دسته بندی :
اطلاعات کتاب
  • جلد
  • سری
  • ویرایش
  • سال 2021
  • نویسنده (گان) Roberto Vitillo
  • ناشر Roberto Vitillo
  • زبان English
  • تعداد صفحات
  • حجم فایل 10.3MB
  • فرمت فایل pdf
  • شابک 1838430202, 9781838430207
قیمت محصول :

45,000 تومان

با خرید این محصول، 2,250 تومان به کیف پول شما بازگشت داده می‌شود

روند خرید و دریافت کتاب‌ها بدون هیچ اختلالی انجام می‌شود.
تمامی فایل‌ها بر روی سرورهای داخلی میزبانی می‌شوند تا بتوانید به راحتی و در لحظه آن‌ها را دانلود کنید. در صورت بروز هرگونه مشکل یا نیاز به راهنمایی، لطفاً از طریق « صفحه تماس باما» با تیم پشتیبانی در ارتباط باشید.

تمامی کتاب های موجود در وبسایت سای وان به زبان انگلیسی میباشد

توضیحات

Learning to build distributed systems is hard, especially if they are large scale. It’s not that there is a lack of information out there. You can find academic papers, engineering blogs, and even books on the subject. The problem is that the available information is spread out all over the place, and if you were to put it on a spectrum from theory to practice, you would find a lot of material at the two ends, but not much in the middle.

That is why I decided to write a book to teach the fundamentals of distributed systems so that you dont have to spend countless hours scratching your head to understand how everything fits together. This is the guide I wished existed when I first started out, and it’s based on my experience building large distributed systems that scale to millions of requests per second and billions of devices.

If you develop the back-end of web or mobile applications (or would like to!), this book is for you. When building distributed systems, you need to be familiar with the network stack, data consistency models, scalability and reliability patterns, and much more. Although you can build applications without knowing any of that, you will end up spending hours debugging and re-designing their architecture, learning lessons that you could have acquired in a much faster and less painful way.

Table of contents

1 Introduction
1.1 Communication
1.2 Coordination
1.3 Scalability
1.4 Resiliency
1.5 Operations
1.6 Anatomy of a distributed system

Communication
2 Reliable links
2.1 Reliability
2.2 Connection lifecycle
2.3 Flow control
2.4 Congestion control
2.5 Custom protocols
3 Secure links
3.1 Encryption
3.2 Authentication
3.3 Integrity
3.4 Handshake
4 Discovery
5 APIs
5.1 HTTP
5.2 Resources
5.3 Request methods
5.4 Response status codes
5.5 OpenAPI
5.6 Evolution

Coordination
6 System models
7 Failure detection
8 Time
8.1 Physical clocks
8.2 Logical clocks
8.3 Vector clocks
9 Leader election
9.1 Raft leader election
9.2 Practical considerations
10 Replication
10.1 State machine replication
10.2 Consensus
10.3 Consistency models
10.4 Chain replication
10.5 Solving the CAP theorem
10.6 Coordination avoidance
11 Transactions
11.1 ACID
11.2 Isolation
11.3 Atomicity
11.4 Asynchronous transactions

Scalability
12 Functional decomposition
12.1 Microservices
12.2 API gateway
12.3 CQRS
12.4 Messaging
13 Partitioning
13.1 Sharding strategies
13.2 Rebalancing
14 Duplication
14.1 Network load balancing
14.2 Replication
14.3 Caching

Resiliency
15 Common failure causes
15.1 Single point of failure
15.2 Unreliable network
15.3 Slow processes
15.4 Unexpected load
15.5 Cascading failures
15.6 Risk management
16 Downstream resiliency
16.1 Timeout
16.2 Retry
16.3 Circuit breaker
17 Upstream resiliency
17.1 Load shedding
17.2 Load leveling
17.3 Rate-limiting
17.4 Bulkhead
17.5 Health endpoint
17.6 Watchdog

Testing and operations
18 Testing
18.1 Scope
18.2 Size
18.3 Practical considerations
19 Continuous delivery and deployment
19.1 Review and build
19.2 Pre-production
19.3 Production
19.4 Rollbacks
20 Monitoring
20.1 Metrics
20.2 Service-level indicators
20.3 Service-level objectives
20.4 Alerts
20.5 Dashboards
20.6 On-call
21 Observability
21.1 Logs
21.2 Traces
21.3 Putting it all together
22 Final words

————————————————————–

ترجمه ماشینی :

یادگیری ساخت سیستم های توزیع شده سخت است، به خصوص اگر در مقیاس بزرگ باشند. این به این معنا نیست که کمبود اطلاعات وجود دارد. می توانید مقالات دانشگاهی، وبلاگ های مهندسی و حتی کتاب هایی در این زمینه پیدا کنید. مشکل این است که اطلاعات موجود در همه جا پخش شده است و اگر بخواهید آن را در یک طیف از تئوری تا عمل قرار دهید، مطالب زیادی در دو سر پیدا می کنید، اما نه چندان در وسط.

به همین دلیل تصمیم گرفتم کتابی برای آموزش اصول سیستم های توزیع شده بنویسم تا مجبور نباشید ساعت های بی شماری را صرف خاراندن سر خود کنید تا بفهمید که چگونه همه چیز با هم هماهنگ است. این راهنمای من است که وقتی برای اولین بار شروع به کار کردم آرزو می کردم وجود داشته باشد، و بر اساس تجربه من در ساختن سیستم های توزیع شده بزرگ است که به میلیون ها درخواست در ثانیه و میلیاردها دستگاه می رسد.

اگر برنامه‌های کاربردی وب یا تلفن همراه را توسعه می‌دهید (یا می‌خواهید!)، این کتاب برای شماست. هنگام ساختن سیستم‌های توزیع‌شده، باید با پشته شبکه، مدل‌های سازگاری داده، مقیاس‌پذیری و الگوهای قابلیت اطمینان و موارد دیگر آشنا باشید. اگرچه می‌توانید برنامه‌ها را بدون دانستن هیچ‌یک از آن‌ها بسازید، اما در نهایت ساعت‌ها را صرف اشکال‌زدایی و طراحی مجدد معماری آن‌ها خواهید کرد و درس‌هایی را یاد می‌گیرید که می‌توانستید به روشی بسیار سریع‌تر و کم‌دردسرتر به دست آورید.

فهرست محتوا

1 مقدمه
1.1 ارتباطات
1.2 هماهنگی
1.3 مقیاس پذیری
1.4 انعطاف پذیری
1.5 عملیات
>1.6 آناتومی یک سیستم توزیع شده

ارتباط
2 پیوندهای قابل اعتماد
2.1 قابلیت اطمینان
2.2 چرخه عمر اتصال
2.3 جریان کنترل
2.4 کنترل تراکم
2.5 پروتکل های سفارشی
3 پیوند ایمن
3.1 رمزگذاری
3.2 احراز هویت
3.3 صداقت
3.4 Handshake
4 Discovery
5 API
br>5.1 HTTP
5.2 منابع
5.3 روشهای درخواست
5.4 کدهای وضعیت پاسخ
5.5 OpenAPI
5.6 Evolution

هماهنگی
6 مدل سیستم
7 تشخیص شکست
8 زمان
8.1 ساعتهای فیزیکی
8.2 ساعتهای منطقی
8.3 ساعتهای برداری
9 انتخاب رهبر
9.1 رهبر رافت انتخاب
9.2 ملاحظات عملی
10 تکرار
10.1 تکرار ماشین حالت
10.2 اجماع
10.3 مدلهای سازگاری
10.4 تکرار زنجیره
10.5 حل قضیه CAP
10.6 اجتناب از هماهنگی
11 تراکنش
11.1 ACID
11.2 ایزوله
11.3 اتمی
11.4 تراکنش های ناهمزمان

مقیاس پذیری
12 تجزیه عملکردی
12.1 Microservices
12.2 API gateway
12.3 CQRS
12.4 Messaging
13 Partitioning
13.1 Sharding Strateges
13.2 Rebalancing
14 Duplication1
14. تعادل بار
14.2 تکرار
14.3 ذخیره

ارتقای
15 علل رایج خرابی
15.1 یک نقطه شکست
15.2 شبکه غیرقابل اعتماد
15.3 فرآیندهای آهسته
15.4 بار غیرمنتظره
15.5 خرابی های آبشاری
15.6 مدیریت ریسک
16 انعطاف پذیری پایین دست
16.1 مهلت زمانی
16.2 تلاش مجدد
16.3 Cir
17 انعطاف پذیری بالادست
17.1 کاهش بار
17.2 بار تسطیح
17.3 محدود کننده نرخ
17.4 حفره
17.5 نقطه پایان سلامت
17.6 Watchdog

آزمایش و عملیات
18 تست
18.1 دامنه
18.2 اندازه
18.3 ملاحظات عملی
19 تحویل و استقرار مستمر
19.1 بررسی و ساخت
19.2 پیش تولید
19.3 تولید
19.4 بازگشت
20 نظارت
20.1 متریک
20.2 نشانگرهای سطح سرویس
20.3 اهداف سطح سرویس
20.4 هشدارها
>20.5 داشبورد
20.6 در حال تماس
21 قابلیت مشاهده
21.1 گزارش
21.2 Traces
21.3 کنار هم قرار دادن همه
22 کلمه پایانی


 

tag : دانلود کتاب درک سیستم های توزیع شده: آنچه که هر توسعه دهنده باید در مورد برنامه های کاربردی توزیع شده بزرگ بداند , Download درک سیستم های توزیع شده: آنچه که هر توسعه دهنده باید در مورد برنامه های کاربردی توزیع شده بزرگ بداند , دانلود درک سیستم های توزیع شده: آنچه که هر توسعه دهنده باید در مورد برنامه های کاربردی توزیع شده بزرگ بداند , Download Understanding Distributed Systems: What every developer should know about large distributed applications Book , درک سیستم های توزیع شده: آنچه که هر توسعه دهنده باید در مورد برنامه های کاربردی توزیع شده بزرگ بداند دانلود , buy درک سیستم های توزیع شده: آنچه که هر توسعه دهنده باید در مورد برنامه های کاربردی توزیع شده بزرگ بداند , خرید کتاب درک سیستم های توزیع شده: آنچه که هر توسعه دهنده باید در مورد برنامه های کاربردی توزیع شده بزرگ بداند , دانلود کتاب Understanding Distributed Systems: What every developer should know about large distributed applications , کتاب Understanding Distributed Systems: What every developer should know about large distributed applications , دانلود Understanding Distributed Systems: What every developer should know about large distributed applications , خرید Understanding Distributed Systems: What every developer should know about large distributed applications , خرید کتاب Understanding Distributed Systems: What every developer should know about large distributed applications ,

نقد و بررسی‌ها

هنوز بررسی‌ای ثبت نشده است.

اولین کسی باشید که دیدگاهی می نویسد “دانلود کتاب Understanding Distributed Systems: What every developer should know about large distributed applications – درک سیستم های توزیع شده: آنچه که هر توسعه دهنده باید در مورد برنامه های کاربردی توزیع شده بزرگ بداند”