بخش ۱۰ از ۱۲
عملکرد، مقیاس و امنیت
ظرفیت و سرعت اندازهگیریشده، مسیر مقیاسپذیری تا حجم دادههای صنایع بزرگ، دسترسپذیری بالا، کاربران و نقشها و امنیت لایهبهلایه.

۱۹
کاربران، نقشها و امنیت
هویت و دسترسی
- کاربران با نقشهای سیستمی؛ ۱۲ حوزهٔ مجوز × ۷ عمل (مشاهده، ایجاد، ویرایش، حذف، کنترل…)
- کلید دسترسی سطحبندیشده برای هر پروژه (سیستم، مدیر، کاربر سطح ۱ تا ۳)؛ کلید فقطخواندنی برای نمایشگرها
- ورود با نام کاربری و رمز، توکن امضاشده، تبادل توکن با نشست مدیریتی؛ ثبت ورود/خروج و تغییر تنظیمات در دفتر رویداد
کنترل امن
- فرمان به تجهیز فقط با مجوز کنترل و تأیید رمز (نشست کوتاه ۶۰ ثانیهای)
- هر فرمان فقط یکبار اجرا میشود (کلید یکتا) و رسید تجهیز ثبت میشود
- اقدامهای دستیار هوشمند فقط با تأیید کاربر؛ منطق فرمانده با تأیید دوم
- تفکیک کامل دادهها بین پروژهها؛ فهرست مبدأهای مجاز؛ ارتباط رمزنگاریشده (HTTPS/WSS)؛ لایسنس مشتریمحور




۳۱
ظرفیت، عملکرد، مقیاسپذیری و پایداری
اندازهگیری واقعی عملکرد بلادرنگ
آزمون روی نسخهٔ جاری سامانه و یک سرور معمولی (۶ هستهٔ مجازی، ۱۶ گیگابایت حافظه) با پایگاه دادهٔ واقعی ۳ پروژه انجام شد: ۳٬۴۵۶ نقطهٔ یک مرکز داده با بازههای بهروزرسانی کاهنده، از طریق موتور انتشار بلادرنگ به WebSocket.
| بازهٔ بهروزرسانی هر نقطه | بار هدف (مقدار در ثانیه) | بار تحققیافته | از دست رفته | صف ورودی |
|---|---|---|---|---|
| ۱ ثانیه | ۳٬۴۵۶ | ۳٬۶۲۳ | ۰ | خالی |
| ۲۵۰ میلیثانیه | ۱۳٬۸۲۴ | ۱۳٬۹۴۱ | ۰ | خالی |
| ۱۰۰ میلیثانیه | ۳۴٬۵۶۰ | ۳۴٬۶۷۹ | ۰ | خالی |
| ۵۰ میلیثانیه | ۶۹٬۱۲۰ | ۶۹٬۱۶۵ | ۰ | خالی |
| ۲۰ میلیثانیه | ۱۷۲٬۸۰۰ | ۱۱۷٬۷۷۶ (سقف سختافزار آزمون) | ۰ — با ادغام آخرین مقدار | خالی |
نتیجه: موتور انتشار روی یک سرور معمولی حدود ۷۰ هزار بهروزرسانی در ثانیه را بدون هیچ از دست رفتنی به همهٔ کاربران متصل میرساند و در بار بالاتر (تا ~۱۲۰ هزار در ثانیه) با «ادغام آخرین مقدار» همچنان تازهترین وضعیت هر نقطه را تحویل میدهد. مسیر پردازش کامل (محاسبه، حد، منطق، ذخیره) در این آزمون با شبیهسازی تجهیزات روی WebSocket حدود ۲٬۵۰۰ تغییر مقدار در ثانیه برای یک گره اندازهگیری شد — معادل پایش دهها هزار نقطه با گزارش بر اساس تغییر (report‑by‑exception)؛ بهینهسازی این مسیر برای سایتهای بسیار بزرگ در نقشهٔ راه آمده است.
معماری برای حجم دادهٔ بالا
جداسازی و توزیع بار
- هر پروژه (سایت، واحد فرایندی، ساختمان) زمینهٔ حافظه، کلیدها، نشستها و پایگاه تاریخچهٔ مستقل خود را دارد؛ رشد یک سایت بر دیگری اثر نمیگذارد
- سایتهای بسیار بزرگ (پالایشگاه، پتروشیمی، شبکهٔ برق) به واحدهای مستقل تقسیم میشوند؛ هر واحد بازهٔ نظرسنجی و منطق خودش را دارد
- سرویسهای همراه (کاتالوگ، هوش مصنوعی، نقشه) روی سرورهای جدا مستقر میشوند تا بار هسته را نگیرند
- نظرسنجی تفکیکی برای هر تجهیز و گزارش بر اساس تغییر با پهنای باند (deadband) حجم داده را در مبدأ کم میکند
ذخیرهسازی حجیم
- PostgreSQL سازمانی با نوشتن دستهای (هر ۵ ثانیه برای مقادیر جاری، هر ۶۰ ثانیه برای تاریخچه)
- پارتیشن ماهانهٔ تاریخچه: پرسوجو روی دادههای جدید سریع میماند و بایگانی/حذف دادههای قدیمی بدون قفل انجام میشود
- صف ورودی ۱۰٬۰۰۰ پیامی رگبار ناگهانی تجهیزات را جذب میکند؛ هیچ پیامی در آزمونها از صف حذف نشد
- ادغام «آخرین مقدار» در انتشار: کاربر همیشه تازهترین وضعیت را میبیند، حتی زیر بار سنگین
دسترسپذیری بالا (HA)
- پایگاه داده: Streaming Replication و سرور آماده به کار (standby) در PostgreSQL؛ بازیابی نقطهای از پشتیبان
- گره کاربردی آماده به کار با همان نسخه و پیکربندی؛ برونبرد/درونبرد تنظیمات برای جابهجایی سریع
- حالت ماشینهای حالت و مهلت سناریوها در پایگاه داده ماندگار است؛ پس از جابهجایی گره، منطق از همان نقطه ادامه میدهد
- بهروزرسانی با نسخهٔ قبلی سنجاقشده و بازگشت یکفرمانه
کلاسترینگ
- امروز: کلاستر پایگاه داده (PostgreSQL HA)، تفکیک سرویسها روی سرورهای جدا، تقسیم سایتهای بزرگ به واحدهای مستقل
- در نقشهٔ راه: کلاستر فعال‑فعال لایهٔ کاربردی با توزیع پروژهها بین گرهها و گرههای جمعآوری افقی — معماری پروژهمحور سامانه برای این توزیع طراحی شده است
اعداد این فصل زمانبندیها و ظرفیتهای واقعی سامانهاند و مبنای برآورد سایز پروژه.
| مؤلفه | مقدار | اثر |
|---|---|---|
| چرخهٔ نظرسنجی درایورها | هر ۱۰ ثانیه تجهیزات سررسیدشده؛ بازهٔ هر تجهیز جداگانه (از چند ثانیه تا دقیقه) | تنظیم بار شبکه به تفکیک تجهیز |
| صف ورودی / خروجی / پیامک | ۱۰٬۰۰۰ / ۱٬۰۰۰ / ۱٬۰۰۰ پیام | جذب رگبار ورودی بدون گمشدن |
| نوشتن مقادیر جاری | دستهای هر ۵ ثانیه | بار پایگاه داده مستقل از نرخ داده |
| انتشار WebSocket | هر ۷۵ میلیثانیه، بستههای تا ۵۰۰ رویداد | تأخیر زیر ثانیه در مرورگر |
| تازهسازی مرورگر | ۱۰۰ میلیثانیه (نقاط دیدهشده) / ۶۰۰ میلیثانیه (بقیه) | صفحات پرنقطه روان میمانند |
| تطبیق پشتیبان | هر ۸ ثانیه (REST)، همگامسازی کامل هر ۵ دقیقه | بینیازی از WebSocket در شبکههای محدود |
| ضربان و اتصال مجدد | ۵ ثانیه؛ ۵ تا ۶۰ ثانیه نمایی؛ تشخیص اتصال مرده ۱۵ ثانیه | پایداری پشت NAT و پراکسی |
| تاریخچه | پایگاه مستقل هر پروژه؛ پارتیشن ماهانه؛ درج دستهای هر ۶۰ ثانیه | رشد داده بدون کندی پرسوجو |
| تاریخچهٔ نظرسنجی | ۹۰ روز با پاکسازی شبانه | عیبیابی ارتباط تجهیز |
| انرژی | بلادرنگ هر ۵ ثانیه؛ تقاضا ۱۵ دقیقه؛ ساعتی/روزانه/ماهانه | گزارشهای آمادهٔ صورتحساب |
| نمونهٔ مرجع این سند | ۳ پروژه · ۴۲۷ تجهیز · ۳٬۹۶۴ نقطه · ۳۲ داشبورد | روی سرور ۴ هسته / ۸ گیگابایت |
پایداری
- خطای یک نقطه یا تجهیز، حلقهٔ نظرسنجی بقیه را متوقف نمیکند
- حالت جاری ماشینهای حالت و مهلت سناریوها با راهاندازی مجدد حفظ میشود
- فرمانها با کلید یکتا؛ بهروزرسانیها با بازگشت خودکار (rollback)
- پشتیبانگیری روزانهٔ پایگاهها و فایلها؛ نگهداشت لاگ چرخشی
مقیاسپذیری
- پروژههای بیشتر = پایگاه تاریخچهٔ جداگانه برای هر یک
- سرویسهای همراه (کاتالوگ، AI، نقشه) روی سرور جدا قابل استقرارند
- پروفایلها و ماژولها بدون نصب جدید فعال میشوند
- برای سایتهای بزرگ: بازهٔ نظرسنجی تفکیکی و اشتراک انتخابی نقاط
۳۵
امنیت — لایه به لایه
۱ · شبکهفقط HTTPS/WSS از دروازهٔ TLS؛ سرویسهای داخلی از بیرون در دسترس نیستند؛ فهرست مبدأهای مجاز
۲ · هویتورود با نام کاربری/رمز؛ توکن امضاشده؛ نشست مدیریتی جدا برای کنسول
۳ · مجوزنقشها و ۱۲×۷ مجوز؛ کلید پروژه با سطح (سیستم، مدیر، کاربر ۱–۳)
۴ · کنترلمجوز کنترل + تأیید رمز ۶۰ ثانیهای + کلید یکتا + رسید تجهیز
۵ · دستیارهر نوشتن با کارت تأیید؛ منطق فرمانده غیرفعال تا تأیید دوم؛ رد نتیجهٔ ساختگی
۶ · ممیزیدفتر رویداد: ورود/خروج، تغییر تنظیمات، فرمان دستی؛ لاگ چرخشی
داده
- جداسازی کامل پروژهها در API، WebSocket، تاریخچه و رسانه
- پشتیبانگیری روزانه؛ بازیابی از اسنپشات؛ نگهداشت قابل تنظیم
- داده روی سرور مشتری میماند؛ ارائهدهندهٔ مدل زبانی قابل انتخاب یا محلی
عملیات امن
- بهروزرسانی با نسخهٔ قبلی سنجاقشده و بازگشت یکفرمانه
- لایسنس مشتریمحور با تاریخ انقضا
- SNMPv3 با احراز و رمزنگاری برای تجهیزات؛ Tuya با AES؛ Redfish روی HTTPS
- پیشنهاد: VLAN جدا برای تجهیزات، VPN برای دسترسی راه دور، تغییر رمزهای پیشفرض پس از نصب


همزاد دیجیتال را زنده ببینید
دموی زندهٔ ArgBMS با همزادهای سهبعدی، داشبوردها و منطق واقعی.