Saeid Noormohammadi·۲ ماه پیشنگاهی به تغییرات مهم Apache Kafka 4.1چند وقت پیش بود که درباره تغییرات مهم نسخه 4.0 کافکا نوشتم. از حذف وابستگی به ZooKeeper با پیشفرض شدن KRaft گرفته تا بهبود پروتکل Consumer…
Saeid Noormohammadi·۷ ماه پیشانعطاف بیش از حد در طراحی نرم افزار، پیچیدگی و دردسر ناخواستهتوی دنیای طراحی نرم افزار یه وسوسه بزرگ وجود داره: اینکه همه چیز رو داینامیک کنیم. یعنی چی؟ یعنی قوانین قابل تغییر باشن، رفتارها رو بشه کان…
Saeid Noormohammadi·۷ ماه پیشوقتی نامعلوم ها به سراغ شما می آیند: مدیریت غافلگیری در سیستم هاتا حالا شده فکر کنید همه چیز تحت کنترله، کدها دقیق نوشته شدن و هیچ چیز غیر منتظره ای نمی تونه اتفاق بیفته؟ بعد یهویی از جایی که اصلاً انتظا…
Saeid Noormohammadi·۷ ماه پیشShare Group در Kafka (Queues for Kafka)Apache Kafka یک Event-Streaming Platform اپن سورس و بسیار محبوب است که ترکیب Horizontal Scaling و Strong Ordering آن را به ابزار قدرتمندی ب…
Saeid Noormohammadi·۸ ماه پیشکافکا بدون ZooKeeper: نگاهی به مهم ترین تغییرات نسخه 4.0تو نسخه جدید Kafka 4.0 که اخیرا منتشر شده، مجموعه ای از ویژگی ها و بهبودهای جدید معرفی شدن که به نظرم مهم ترینش، عملکرد پیش فرض در حالت KRa…
Saeid Noormohammadi·۱۰ ماه پیشوقتی گذشته جلوی آینده رو میگیره - Frozen Caveman Antipatternتصویر از سایت deviq می باشدشاید شما هم این تجربه رو داشته باشید که در یک پروژه برای انجام یک کاری بخواید از یه روش متفاوت و جدید استفاده کن…
Saeid Noormohammadi·۱ سال پیشزبان زمان در طراحی نرم افزار - گذشته، حال و آینده!در طراحی نرم افزار یکی از اصول جالب نگاه به داده ها از منظر زمان است. به زبان ساده تمام چیزی که نرم افزار انجام می دهد این است که اطلاعات ر…
Saeid Noormohammadi·۱ سال پیشطراحی انتزاع های قابل اعتماد بر روی انتزاع های غیرقابل اعتماددر توسعه نرم افزار طراحی انتزاع هایی که بتوان به آن ها اعتماد کرد یکی از چالش های بزرگ و حیاتی است. این موضوع زمانی پیچیده تر میشود که ساب…
Saeid Noormohammadi·۱ سال پیشچرا و چگونه سیستم ها را دپریکیت کنیم؟ - بخش سومدر بخش قبلی درباره چالش های دپریکیت کردن سیستم ها صحبت کردیم. متوجه شدیم چرا وابستگی های پنهان و استفاده های پیش بینی نشده از سیستم های قدی…
Saeid Noormohammadi·۱ سال پیشچرا و چگونه سیستم ها را دپریکیت کنیم؟ - بخش دومدر بخش اول توضیح دادیم که چرا دپریکیت کردن سیستم های قدیمی مهم است، چگونه این فرایند می تواند سرعت توسعه را افزایش دهد، و چرا کد را باید به…