چند وقت پیش مدیرمون ازم خواست که گزاری از سیستم حسابداریمون بگیرم و بهش بدم
سیستم گزارش رو با PHP نوشتیم و روی سرور راه اندازی کردیم ، توی این گزارش هر سطر از داده ها 10 تا فیلد داشتن که هرکدام از جداول جداگانه ای خوانده میشدند و محاسبه میشند (نرمالیزاسیون انجام شده بود)
فاکتور ها -> (اطلاعات هر فاکتور)
اقلام فاکتور -> ردیف های موجود در هر فاکتور (24 ستون)
** به دلیل اینکه اطلاعات به صورت روزمره نیاز ما نبود برای اینکه به سرور فشاری وارد نکنیم مثلا در فیلد مالیات فقط مقدار آن را ذخیره کرده و برای گزارش گیری آن را محاسبه میکنیم **
ردیف | شماره فاکتور | تاریخ فاکتور | نام شرکت -> از جدول شرکتها
مبلغ ناخالص -> جمع کل ستون های موجود (اقلام فاکتور)
تخفیف حجمی -> جمع کل تخفیفات حجمی موجود در فاکتور (هر کدام جداگانه با درصد های محتلف باید محاسبه میشدند)
مالیات -> (بعضی ها داشتند و بعضی نداشتند)
تخفیف نقدی-> (بعضی ها داشتند و بعضی ها نداشتند)
درصد شرکتی -> درصدی است که کلی به فاکتور تخفیف میدهند
مبلغ تخفیفات ( جمع کل تخفیفات)
خالص فاکتور
** تعداد سطر ها : 12000
تعداد اقلامی که باید محاسبه بر روی انها انجام میشد -> 100 هزار
به دلیل اینکه محاسبات هر 3 ماه یکبار نیاز میشد نیازی نبود که درون جدول ذخیره بشوند و هر بار محاسبه مجدد انجام میشد (به دلیل اینکه در استفاده روزمره فشاری به سرور وارد نشود)
اطلاعات مشابه :
PHP 7.2
Server type: MariaDB
Server version: 10.1.36-MariaDB - mariadb.org binary distribution
OS : CentOs 7 minimal
ram :4 GB
اطلاعات سرور ویندوز :
OS: Window server 2008
Ram : 16 Gb
Hard : SSD
خب ، نتیجه گزارش گیری
حین اجرا روی سرور لینوکس :
زمان اجرا : 11 ثانیه
اجرا روی سرور ویندوزی :
زمان اجرا : 19 ثانیه