‫دراسة الطرق المثلى لتحسين أداء تطبيقات الوب‬            ‫إشراف د. باسل الخطيب‬             ‫تقديم محمد القواص‬
External Objects
‫القضايا األساسية حول مشاكل بطء الوب!!؟‬
‫عدم رضى الزبون‬‫تحميل الصفحة استغرق أكثر من 01 ثوان‬
‫التأثير السلبي على أرباح الشركات‬
Google0.4 sec for 10 Results0.9 sec for 30 Results
20% Drop in full-page trafic
Amazon   +100 ms1% drop in sales
‫عدد مستخدمي الموقع‬‫>= ‪More than 8 sec‬‬
‫االنطباع األولي للزبون‬1/20 sec 10 sec, Noam Tractinsky
‫نمو حجم صفحة الوب‬‫‪2003 till now 3.3x‬‬
‫وقت االستجابة األعظمي‬     ‫• 2 إلى 3 ثوان‬     ‫• 3 إلى 5 ثوان‬  ‫• 02 إلى 03 ثانية‬
‫التحسينات المقترحة ألداء صفحات الوب‬
‫التحسينات المقترحة على مستوى صفحة الوب‬
‫التقليل من عدد الطلبات الصادرة عن ‪HTTP‬‬
‫التقليل من عدد الطلبات الصادرة عن ‪HTTP‬‬         ‫تحويل النصوص الصورية إلى نصوص نمطية‬      ‫•‬                         ...
‫التقليل من عدد الطلبات الصادرة عن ‪HTTP‬‬           ‫• دمج و تحسين ملفات ‪ CSS‬و ‪JavaScript‬‬                ‫• تخزين ال...
‫تغيير حجم الصور وتحسينها‬
‫تحسين الملتيميديا‬
‫تحسين الملتيميديا‬        ‫• تحسين الفيديو من أجل الوب‬        ‫• معدالت وأبعاد إطار الفيديو‬                 ‫– 21 إلى 5...
‫تحسين الملتيميديا‬                                                  ‫• تعديل الفيديو‬                                  ‫–...
‫تحويل ‪ JavaScript‬إلى ‪ CSS‬قدر اإلمكان‬
‫استخدام طريقة ‪Sniffing‬‬‫من قبل المخدم ‪Server-Side‬‬
‫تحويل التخطيط الجدولي ‪Table Layout‬‬     ‫إلى التخطيط المتعلق بـ ‪CSS‬‬
CSS ‫ بقواعد‬Inline Style ‫تبديل‬
‫ بحكمة‬JavaScript ‫تشغيل‬
‫تعريف ‪ CSS‬في أعلى الصفحة‬ ‫والـ ‪ Javascript‬في أسفلها‬
‫التحسينات المقترحة على مستوى ‪CSS‬‬
‫استخدام المنتقيات التنازلية‬‫};‪ul > li{font-weight:bold‬‬
‫ مع التصاريح‬Selectors ‫تجميع المنتقيات‬              ‫ المشتركة‬Declarations.sitehead, .sitenav {font-weight: normal; fo...
‫تجميع التصاريح مع المنتقيات المشتركة‬body {font-size: 1em;}body {font-family: arial, helvetica, geneva, sans-serif;}body ...
‫دمج التنسيقات المتشابهة داخل صفوف ‪classes‬‬               ‫مشتركة‬
‫استخدام خاصية الوراثة ‪ Inheritance‬للتخلص من‬             ‫التصاريح المتكررة‬
‫استخدام صيغ ‪ CSS‬المختزلة‬
‫ المختزلة‬CSS ‫استخدام صيغ‬                            ‫• استخدام ألوان مختزلة‬                                  color: #...
‫ الطويل‬class‫ و‬ID ‫اختصار أسماء التعريف‬         #c .ta{text-align:center;}
CSS3 ‫ و‬CSS2 ‫االستفادة من ميزات‬                                [att]•                            [att=val]•            ...
‫التحسينات المقترحة على مستوى ‪Javascript‬‬
‫حذف تعليقات من ملف ‪Javascript‬‬
‫التقليل من التعليقات الظرفية‬    <!--[if lt IE 7]><script src="patch.js"type="text/javascript"></script><![endif]-->
‫تقليل المساحات البيضاء‬
‫استخدام اختزاالت ‪JavaScript‬‬      ‫;++‪x=x+1; => x‬‬
‫ الثابتة‬string ‫استخدام مختصرات‬ msg="An error has occurred";
‫تجنب كتابة تعليمات مستحيلة التنفيذ‬
‫تقصير أسماء المتحوالت والوظائف المعرفة من قبل‬                   ‫المستخدم‬
‫القيم االفتراضية‬
‫النظر في استخدام ‪ Ajah‬كحل بديل عن ‪ RSS‬و ‪JSON‬‬           ‫و ‪XML‬عند الحاجة لها‬
‫التحسينات المقترحة على مستوى ‪AJAX‬‬
‫تطبيق ‪ AJAX‬بما يقابل المشكلة تماما‬
‫استخدام مكتبة ‪ AJAX‬مدعمة وذات تصميم جيد‬                 ‫َّ‬
‫استخدام مكتبة ‪ AJAX‬مدعمة وذات تصميم جيد‬                 ‫َّ‬                                  ‫• اتصاالت ‪AJAX‬‬    ‫•...
‫التقليل من متطلبات طلب ‪HTTP‬‬‫1.1 ‪ :HTTP‬ال يمكن إرسال أكثر من طلبين إلى المخدم‬              ‫بآن معا ً من نفس المتصفح‬
‫اختيار أنماط البيانات بشكل صحيح قبل اإلرسال‬
‫توظيف ذاكرة وسطية خاصة‬
‫التأكد من معالجة مشاكل أداء الشبكة‬‫طبقة ثامنة فوق الطبقات السبع الخاصة بالبروتوكول‬
‫التحسين من جانب المخدم ‪Server Side‬‬
‫تحسين طرق التحميل المتوازية ‪Parallel‬‬           ‫‪Downloads‬‬
‫تقليل مقابالت ‪DNS lookups‬‬‫يستغرق ‪ DNS‬عادة 02-021 جزء من الثانية‬
HTTP ‫ضغط‬  Gzip
Delta ‫تشفير‬
‫إعادة كتابة عناوين المصادر على اإلنترنت ‪URIs‬‬      ‫باستخدام تقنية ‪mod_rewrite‬‬
‫نظام المفاضلة الكترونية في وزارة الصحة‬
‫في هذه الحالة المواقع مصمم دون مراعاة قواعد تحسين األداء.‬‫من المالحظ أن عدد ملفات ‪ Javascript‬هو 01 ملفات ‪CSS‬‬  ‫هو 8...
‫وأصبح الحجم الكلي 1 ميغا بايت والزمن الكلي المستغرق‬                   ‫9.41 ثانية‬
‫وأصبح عدد الطلبات 83 طلب والزمن الكلي المستغرق 50.9‬                       ‫ثانية‬
‫آفاق مستقبلية‬
‫آفاق مستقبلية‬          ‫دراسة األداء لألنظمة العاملة على أجهزة النقالة‬     ‫•‬                  ‫دراسة األداء لتبادل ال...
دراسة الطرق المثلى لتحسين أداء تطبيقات الوب
دراسة الطرق المثلى لتحسين أداء تطبيقات الوب
Upcoming SlideShare
Loading in...5
×

دراسة الطرق المثلى لتحسين أداء تطبيقات الوب

265
-1

Published on

أصبحت سرعة التطور التي تعيشه البشرية في أيامنا هذه، مخيفةً إلى حدٍّ جعل من غير المقبول التراجع أو التباطؤ في هذا التطور. ولعل أبرز ما يميز هذه المرحلة هو بروز شبكة الوب حاضناً أساسياً لا يمكن تجاهله، على الرغم من التحديات والمشكلات التي رافقت ظهوره، ومازالت ترافقه لاسيما من حيث الأداء.
يهدف البحث إلى عرض المشكلات الحالية التي تواجه الأنظمة الحاسوبية العاملة على شبكة الوب من حيث الأداء، وأنظمة التخاطب مع المستخدم. ويطرح قائمة التحديات التي تواجهها، وذلك من خلال تقسيم المشكلات بناء على أنواع التقنيات البرمجية المستخدمة في بناء صفحات الوب. كما يعرض البحث مجموعة من النصائح والتحسينات المقترحة لرفع أداء هذه النظم إلى الحد الأمثل.
وقد تم اختيار نظام المفاضلة في وزارة الصحة في الجمهورية العربية السورية، بيئة للاختبار وتطبيق النصائح والتوصيات.
In today’s world, the development aspects are growing very fast. We must acknowledge the fact that we have to be as faster as this development. One of the major properties of today’s evolving is the World Wide Web which has the focus as a main container for the remaining properties. Since its beginning, the World Wide Web is facing a lot of difficulties and challenges such like the performance issues.
This essay aims to state all of the current performance difficulties that are facing web-based computer systems. This can be done through dividing those difficulties according to the technology that was used in the web. Moreover, we demonstrate a number of suggestions and improvements that may increase the web performance in order to reach its ideal usage.
In addition, those suggestions will be implemented in a real use case, and we chose the “Mofadalah” web-based system at the ministry of health in Syrian Arab Republic as an environment for our use case.


Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
265
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

دراسة الطرق المثلى لتحسين أداء تطبيقات الوب

  1. 1. ‫دراسة الطرق المثلى لتحسين أداء تطبيقات الوب‬ ‫إشراف د. باسل الخطيب‬ ‫تقديم محمد القواص‬
  2. 2. External Objects
  3. 3. ‫القضايا األساسية حول مشاكل بطء الوب!!؟‬
  4. 4. ‫عدم رضى الزبون‬‫تحميل الصفحة استغرق أكثر من 01 ثوان‬
  5. 5. ‫التأثير السلبي على أرباح الشركات‬
  6. 6. Google0.4 sec for 10 Results0.9 sec for 30 Results
  7. 7. 20% Drop in full-page trafic
  8. 8. Amazon +100 ms1% drop in sales
  9. 9. ‫عدد مستخدمي الموقع‬‫>= ‪More than 8 sec‬‬
  10. 10. ‫االنطباع األولي للزبون‬1/20 sec 10 sec, Noam Tractinsky
  11. 11. ‫نمو حجم صفحة الوب‬‫‪2003 till now 3.3x‬‬
  12. 12. ‫وقت االستجابة األعظمي‬ ‫• 2 إلى 3 ثوان‬ ‫• 3 إلى 5 ثوان‬ ‫• 02 إلى 03 ثانية‬
  13. 13. ‫التحسينات المقترحة ألداء صفحات الوب‬
  14. 14. ‫التحسينات المقترحة على مستوى صفحة الوب‬
  15. 15. ‫التقليل من عدد الطلبات الصادرة عن ‪HTTP‬‬
  16. 16. ‫التقليل من عدد الطلبات الصادرة عن ‪HTTP‬‬ ‫تحويل النصوص الصورية إلى نصوص نمطية‬ ‫•‬ ‫استخدم ‪Text Overlays‬‬ ‫•‬‫تحويل ‪ spacer cells‬إلى (‪ CSS margins‬أو ‪)Padding‬‬ ‫•‬ ‫دمج الصور و اسخدام ‪ Image map‬أو ‪Sprite‬‬ ‫•‬
  17. 17. ‫التقليل من عدد الطلبات الصادرة عن ‪HTTP‬‬ ‫• دمج و تحسين ملفات ‪ CSS‬و ‪JavaScript‬‬ ‫• تخزين الملفات الديناميكية في ‪Cache‬‬ ‫• التخلص من ‪ (i)Frames‬و ‪javaScript includes‬‬
  18. 18. ‫تغيير حجم الصور وتحسينها‬
  19. 19. ‫تحسين الملتيميديا‬
  20. 20. ‫تحسين الملتيميديا‬ ‫• تحسين الفيديو من أجل الوب‬ ‫• معدالت وأبعاد إطار الفيديو‬ ‫– 21 إلى 51 ‪fps‬‬ ‫– 023 ‪pixels 240 x‬‬ ‫• التقليل من الضجيج والحركة‬
  21. 21. ‫تحسين الملتيميديا‬ ‫• تعديل الفيديو‬ ‫– ضغط الفيديو من أجل الوب‬ ‫– تقليل ‪ Video Noise‬باستخدام ‪Filters‬‬ ‫– تعديل المباينة في اللون‬ ‫– تعديل مستوى ‪gamma‬‬ ‫– استعادة األسود واألبيض‬‫– اختيار أفضل أنواع الكودك لتتماشى مع نوع العمل المراد فعله.‬
  22. 22. ‫تحويل ‪ JavaScript‬إلى ‪ CSS‬قدر اإلمكان‬
  23. 23. ‫استخدام طريقة ‪Sniffing‬‬‫من قبل المخدم ‪Server-Side‬‬
  24. 24. ‫تحويل التخطيط الجدولي ‪Table Layout‬‬ ‫إلى التخطيط المتعلق بـ ‪CSS‬‬
  25. 25. CSS ‫ بقواعد‬Inline Style ‫تبديل‬
  26. 26. ‫ بحكمة‬JavaScript ‫تشغيل‬
  27. 27. ‫تعريف ‪ CSS‬في أعلى الصفحة‬ ‫والـ ‪ Javascript‬في أسفلها‬
  28. 28. ‫التحسينات المقترحة على مستوى ‪CSS‬‬
  29. 29. ‫استخدام المنتقيات التنازلية‬‫};‪ul > li{font-weight:bold‬‬
  30. 30. ‫ مع التصاريح‬Selectors ‫تجميع المنتقيات‬ ‫ المشتركة‬Declarations.sitehead, .sitenav {font-weight: normal; font-size: 12px; color: #0b2475; font-family: arial,helvetica, sans-serif;}
  31. 31. ‫تجميع التصاريح مع المنتقيات المشتركة‬body {font-size: 1em;}body {font-family: arial, helvetica, geneva, sans-serif;}body {color:#000000;}body {background:#ffffff;}
  32. 32. ‫دمج التنسيقات المتشابهة داخل صفوف ‪classes‬‬ ‫مشتركة‬
  33. 33. ‫استخدام خاصية الوراثة ‪ Inheritance‬للتخلص من‬ ‫التصاريح المتكررة‬
  34. 34. ‫استخدام صيغ ‪ CSS‬المختزلة‬
  35. 35. ‫ المختزلة‬CSS ‫استخدام صيغ‬ ‫• استخدام ألوان مختزلة‬ color: #fc0; – Shorthand Properties ‫• الخاصيات المختزلة‬border: <border-width> <border-style> <color> – transparent
  36. 36. ‫ الطويل‬class‫ و‬ID ‫اختصار أسماء التعريف‬ #c .ta{text-align:center;}
  37. 37. CSS3 ‫ و‬CSS2 ‫االستفادة من ميزات‬ [att]• [att=val]• [att~=val]• [att |=val]• transition: width 2s;•
  38. 38. ‫التحسينات المقترحة على مستوى ‪Javascript‬‬
  39. 39. ‫حذف تعليقات من ملف ‪Javascript‬‬
  40. 40. ‫التقليل من التعليقات الظرفية‬ <!--[if lt IE 7]><script src="patch.js"type="text/javascript"></script><![endif]-->
  41. 41. ‫تقليل المساحات البيضاء‬
  42. 42. ‫استخدام اختزاالت ‪JavaScript‬‬ ‫;++‪x=x+1; => x‬‬
  43. 43. ‫ الثابتة‬string ‫استخدام مختصرات‬ msg="An error has occurred";
  44. 44. ‫تجنب كتابة تعليمات مستحيلة التنفيذ‬
  45. 45. ‫تقصير أسماء المتحوالت والوظائف المعرفة من قبل‬ ‫المستخدم‬
  46. 46. ‫القيم االفتراضية‬
  47. 47. ‫النظر في استخدام ‪ Ajah‬كحل بديل عن ‪ RSS‬و ‪JSON‬‬ ‫و ‪XML‬عند الحاجة لها‬
  48. 48. ‫التحسينات المقترحة على مستوى ‪AJAX‬‬
  49. 49. ‫تطبيق ‪ AJAX‬بما يقابل المشكلة تماما‬
  50. 50. ‫استخدام مكتبة ‪ AJAX‬مدعمة وذات تصميم جيد‬ ‫َّ‬
  51. 51. ‫استخدام مكتبة ‪ AJAX‬مدعمة وذات تصميم جيد‬ ‫َّ‬ ‫• اتصاالت ‪AJAX‬‬ ‫• تسهيالت في الوصول إلى العقد المطلوبة ‪... DOM‬‬ ‫– )($‬ ‫• تنظيم األحداث‬ ‫• وظائف التسهيالت المرفقة‬ ‫• التأثيرات المرئية‬
  52. 52. ‫التقليل من متطلبات طلب ‪HTTP‬‬‫1.1 ‪ :HTTP‬ال يمكن إرسال أكثر من طلبين إلى المخدم‬ ‫بآن معا ً من نفس المتصفح‬
  53. 53. ‫اختيار أنماط البيانات بشكل صحيح قبل اإلرسال‬
  54. 54. ‫توظيف ذاكرة وسطية خاصة‬
  55. 55. ‫التأكد من معالجة مشاكل أداء الشبكة‬‫طبقة ثامنة فوق الطبقات السبع الخاصة بالبروتوكول‬
  56. 56. ‫التحسين من جانب المخدم ‪Server Side‬‬
  57. 57. ‫تحسين طرق التحميل المتوازية ‪Parallel‬‬ ‫‪Downloads‬‬
  58. 58. ‫تقليل مقابالت ‪DNS lookups‬‬‫يستغرق ‪ DNS‬عادة 02-021 جزء من الثانية‬
  59. 59. HTTP ‫ضغط‬ Gzip
  60. 60. Delta ‫تشفير‬
  61. 61. ‫إعادة كتابة عناوين المصادر على اإلنترنت ‪URIs‬‬ ‫باستخدام تقنية ‪mod_rewrite‬‬
  62. 62. ‫نظام المفاضلة الكترونية في وزارة الصحة‬
  63. 63. ‫في هذه الحالة المواقع مصمم دون مراعاة قواعد تحسين األداء.‬‫من المالحظ أن عدد ملفات ‪ Javascript‬هو 01 ملفات ‪CSS‬‬ ‫هو 8، وعدد الطلبات هو 45 طلب، والحجم الكلي للملف‬ ‫2.1 ميغا بايت، والزمن الكلي المستغرق 40.51 ثانية.‬
  64. 64. ‫وأصبح الحجم الكلي 1 ميغا بايت والزمن الكلي المستغرق‬ ‫9.41 ثانية‬
  65. 65. ‫وأصبح عدد الطلبات 83 طلب والزمن الكلي المستغرق 50.9‬ ‫ثانية‬
  66. 66. ‫آفاق مستقبلية‬
  67. 67. ‫آفاق مستقبلية‬ ‫دراسة األداء لألنظمة العاملة على أجهزة النقالة‬ ‫•‬ ‫دراسة األداء لتبادل البيانات بين األجهزة‬ ‫•‬ ‫دراسة أداء األنظمة التي تدعم تطبيقات األجهزة النقالة‬ ‫•‬‫تطوير نظام آلي يعتمد على البحث السابق ليساعد المطور‬ ‫•‬ ‫على رفع من أداء نظامه‬
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×