Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Chinese

Pagetitle
性能和可伸缩性提示
性能和可伸缩性提示


Table of Contents

 

...

 

Identify Performance Bottlenecks using Application Performance Management (APM)

Include Page
Application Performance Management
Application Performance Management

Another method to access APM?

Image Added

Steps
  1. Log in as an administrator
  2. Open up the Administrator Bar
  3. Click on Monitor
  4. Click on Governance Health Check
  5. Check Category: Performance


Identify Performance Bottlenecks using Performance Analyzer

...

Thai

ระบุคอขวดของประสิทธิภาพ


English
The saying from renowned computer scientist Donald Knuth goes:
Chinese

着名的计算机科学家唐纳德·克努特(Donald Knuth)说:

...

  1. Identify elements in your userview pages and menu that require significant amounts of SQL or BeanShell scripts. These are the common causes of performance issues.

    Chinese

    确定需要大量SQL或BeanShell脚本的用户视图页面和菜单中的元素。这是性能问题的常见原因。

    Thai

    ระบุองค์ประกอบในหน้ามุมมองและเมนูของผู้ใช้ที่ต้องการสคริปต์ SQL หรือ BeanShell จำนวนมาก นี่เป็นสาเหตุทั่วไปของปัญหาประสิทธิภาพการทำงาน

  2. Use the Performance Analyzer to help identify the slow elements in your app

    Chinese

    使用性能分析器  来帮助识别应用程序中的慢速元素

    Thai

    ใช้ Performance Analyzer เพื่อช่วยระบุองค์ประกอบที่ช้าในแอปพลิเคชันของคุณ

  3. Identify slow SQL queries in your app by leveraging on your database e.g. for MySQL you can use the Slow Query Log 

    Chinese

    利用您的数据库识别您的应用程序中的慢SQL查询,例如对于MySQL,您可以使用慢查询日志 

    Thai

    ใช้ฐานข้อมูลของคุณเพื่อระบุคิวรี SQL ที่ช้าในแอปพลิเคชันของคุณเช่น MySQL คุณสามารถใช้ Slow Query Log 

  4. Check your custom plugins to ensure that they do not introduce slow processing, database queries, etc.

    Chinese

    检查您的自定义插件,以确保它们不会引入缓慢的处理,数据库查询等

    Thai

    ตรวจสอบปลั๊กอินที่กำหนดเองของคุณเพื่อให้แน่ใจว่าพวกเขาจะไม่ประมวลผลช้าแนะนำแบบสอบถามฐานข้อมูล ฯลฯ

  5. Identify whether there are sufficient resources (physical memory, storage space, Java VM allocation, etc) to handle your app usage, and whether there are any resource leakages.

    Chinese

    确定是否有足够的资源(物理内存,存储空间,Java VM分配等)来处理您的应用程序使用情况,以及是否有任何资源泄漏。

    Thai

    ตรวจสอบว่าคุณมีทรัพยากรเพียงพอ (หน่วยความ, พื้นที่จัดเก็บ, Java VM ฯลฯ ) เพื่อจัดการการใช้งานแอปพลิเคชันของคุณและมีทรัพยากรรั่วไหลหรือไม่

 
Once you have identified where the potential problems are, you can then start to look into optimizing each of the areas, described in the following sections.
Chinese

一旦确定了潜在问题的位置,就可以开始考虑优化每个区域,如下所述。


 
 

Ensure Sufficient Java VM Memory Allocation

...

Thai

คุณสามารถใช้เครื่องมือเช่น VisualVM เพื่อตรวจสอบการใช้หน่วยความจำ Monitoring using VisualVM แนวทางปฏิบัติที่ดีที่สุดในการปรับใช้รายละเอียดเพิ่มเติมบางอย่างสามารถดูได้ที่ Deployment Best Practices#JavaVMConfiguration.

 

 

...

 

Eliminate Resource Leakage (Memory, Database Connections, Files, Network, etc)

...

At the platform level, Joget Workflow DX 8 has been optimized and tested to ensure that there are no resource leakages.

Chinese

在平台层面,Joget Workflow已经过优化和测试,以确保没有资源泄漏。DX 8已经过优化和测试,以确保没有资源泄漏。

Thai

ในระดับแพลตฟอร์ม Joget Workflow DX 8 ได้รับการปรับปรุงและทดสอบเพื่อให้แน่ใจว่าไม่มีการรั่วไหลของทรัพยากร

...

Thai

สามารถตรวจสอบการใช้การเชื่อมต่อฐานข้อมูลในเซิร์ฟเวอร์ฐานข้อมูลของคุณหรือใช้คุณสมบัติ Database Connection Monitoring and Leak Detection v6 ที่กำลังจะมีขึ้น


 

 

...

 

Optimize your App and Database Queries

...

Thai

เพิ่มประสิทธิภาพแอปพลิเคชันและแบบสอบถามฐานข้อมูลของคุณ


Joget Workflow DX 8 has been thoroughly profiled and optimized to ensure that there is minimal overhead at the platform level. However, in enterprise apps that rely on dynamic data, each page request would require many database queries. Database calls are slow not just in query execution, but especially in network I/O. In most cases, database calls are the main performance bottlenecks that cause lengthy page response times and limit scalability.

Chinese

Joget Workflow已经过彻底的分析和优化,以确保平台级别的开销很小。但是,在依赖动态数据的企业应用程序中,每个页面请求都需要许多数据库查询。数据库调用不仅在查询执行中很慢,而且在网络I DX 8已经过彻底的分析和优化,以确保平台级别的开销很小。但是,在依赖动态数据的企业应用程序中,每个页面请求都需要许多数据库查询。数据库调用不仅在查询执行中很慢,而且在网络I / O中尤其如此。在大多数情况下,数据库调用是造成冗长的页面响应时间和限制可伸缩性的主要性能瓶颈。

Thai

Joget Workflow DX 8 ได้รับการวิเคราะห์อย่างละเอียดและปรับให้เหมาะสมเพื่อให้แน่ใจว่าค่าใช้จ่ายในระดับแพลตฟอร์มนั้นน้อยที่สุด อย่างไรก็ตามในแอปพลิเคชันระดับองค์กรที่ใช้ข้อมูลแบบไดนามิกการร้องขอแต่ละหน้าต้องมีการสืบค้นฐานข้อมูลจำนวนมาก การเรียกฐานข้อมูลไม่เพียง แต่ช้าในการประมวลผลแบบสอบถาม แต่โดยเฉพาะในเครือข่าย I / O ในกรณีส่วนใหญ่การเรียกฐานข้อมูลเป็นปัญหาคอขวดของประสิทธิภาพหลักที่ทำให้เกิดเวลาตอบสนองของหน้าเว็บที่ยาวนานและจำกัดขีดความสามารถในการขยาย

...

Thai

สิ่งนี้ไม่เพียงใช้กับหน้ามุมมองผู้ใช้หลัก แต่รวมถึงเมนูมุมมองผู้ใช้ ตัวอย่างเช่นการแสดงจำนวนรายการในเมนูสามารถชะลอการสืบค้นฐานข้อมูลดังนั้นคุณต้องตัดสินใจว่าจะแสดงรายการนั้นหรือไม่ คุณสามารถใช้ Embedded Mode Userview เพื่อทดสอบประสิทธิภาพของเพจที่มีและไม่มีเมนู ใน v6 ที่กำลังมาถึงจะมีคุณลักษณะการแคชมุมมองผู้ใช้ใหม่เพื่อเลือกเพจการดูแคชและเมนูของผู้ใช้เพื่อปรับปรุงประสิทธิภาพการทำงาน


 

 

...

 

Tune the Database and Application Server

...

Thai

ปรับแต่งฐานข้อมูลและแอปพลิเคชันเซิร์ฟเวอร์


 
You should optimize custom SQL queries that are used in your app, as slow queries are very common bottlenecks. In MySQL for example, you can use the  EXPLAIN command  to help you determine the execution plan of your queries, and find ways to optimize them.
Chinese

您应该优化在您的应用程序中使用的自定义SQL查询,因为慢速查询是非常常见的瓶颈。例如,在MySQL中,您可以使用EXPLAIN  命令来帮助您确定查询的执行计划,并找到优化它们的方法。     

Thai

คุณควรเพิ่มประสิทธิภาพการสืบค้น SQL แบบกำหนดเองที่ใช้ในแอปของคุณเนื่องจากการสืบค้นที่ช้าเป็นปัญหาคอขวดที่พบบ่อยมาก ตัวอย่างเช่นใน MySQL คุณสามารถใช้คำสั่งอธิบายเพื่อช่วยคุณกำหนดแผนการดำเนินการของแบบสอบถามและค้นหาวิธีเพิ่มประสิทธิภาพคำสั่งเหล่านั้น


...

Thai

ถ้าคุณใช้กริดฟอร์มจำนวนมากกับตารางฐานข้อมูลหลักและลูก ให้เพิ่ม foreign key ลงในตารางลูกของคุณ สิ่งนี้จะเพิ่มความเร็วในการดึงข้อมูลบันทึกย่อย

 

...

 

Load Test your App and Server Sizing

...

There are many factors involved in determining the server specifications needed to run Joget Workflow DX 8 effectively. These are some of the non-conclusive factors:

Chinese

确定有效运行Joget Workflow所需的服务器规格涉及许多因素。这些是一些非决定性的因素:DX 8所需的服务器规格涉及许多因素。这些是一些非决定性的因素:

Thai

มีปัจจัยหลายอย่างที่เกี่ยวข้องในการพิจารณาข้อกำหนดของเซิร์ฟเวอร์ที่จำเป็นในการเรียกใช้ Joget Workflow DX 8 อย่างมีประสิทธิภาพ เหล่านี้เป็นปัจจัยที่สรุปไม่ได้:

...

To determine the actual requirement for your app and usage, it is best to perform load testing in your environment. There are many free and commercial load testing available, there is an article using the open source Apache JMeter tool at Joget Workflow DX 8 Clustering and Performance Testing on Amazon Web Services (AWS)

...

Thai

เพื่อกำหนดความต้องการที่แท้จริงสำหรับแอปและการใช้งานของคุณวิธีที่ดีที่สุดคือทำการทดสอบโหลดในสภาพแวดล้อมของคุณ มีการทดสอบโหลดฟรีและเชิงพาณิชย์มากมายมีบทความที่ใช้เครื่องมือโอเพนซอร์ส Apache JMeter ที่ Joget Workflow DX 8 Clustering and Performance Testing on Amazon Web Services (AWS)

 

 

...

 

Introduce Clustering and Load Balancing

...

Thai

เมื่อปรับแต่งแอปพลิเคชันของคุณให้เหมาะสมคุณสามารถเพิ่มความจุของเซิร์ฟเวอร์ได้ตามต้องการเพื่อรองรับการโหลดที่เพิ่มขึ้น คุณยังสามารถเริ่มคิดเกี่ยวกับการปรับสเกลแนวนอนซึ่งก็คือการจัดกลุ่มหรือโหลดบาลานซ์ที่คุณติดตั้ง สิ่งนี้ไม่เพียงจัดการกับโหลดที่เพิ่มขึ้น แต่ยังให้ความพร้อมใช้งานสูง อ่านเพิ่มเติมเกี่ยวกับแนวทางปฏิบัติ Deployment Best Practices#ClusteringandLoadBalancing.