If you set Yii to log database queries ('enableParamLogging' => true i dịch - If you set Yii to log database queries ('enableParamLogging' => true i Việt làm thế nào để nói

If you set Yii to log database quer



If you set Yii to log database queries ('enableParamLogging' => true in the db settings of your config file) you can see that Yii queries the database frequently for ActiveRecord queries.

For example: Say you have a model named User and you tell Yii to get you a user by primary key, Yii will query the database three(!) times. It will do a show columns query, then a show create table query, then finally it will query the database for the actual data. Those first two queries are so Yii knows the schema of your user table. If the round trip time from your application server to your database server is 100ms (if it's really this slow, you should do something about it), then those two queries to get the schema will add a minimum of 200ms to your application response time. It will do this for every single request that populates your User model. Depending on how your application is written, it might even do that multiple times in a single request.

If, on the other hand, you tell Yii to use schema caching, Yii will check the cache to see if it already knows the schema to your user table and if it does, it will use that instead of hitting the database. There is still latency involved in checking the cache, but hopefully it's less than or equal to the latency to the database server. Say you're using a Redis server for caching and it also has a latency of 100ms (also ridiculously long). Caching the schema will still be faster than querying the database, because Yii will only need to query the cache a single time to retrieve the schema, versus two trips to the database.

So in this example switching from querying a high latency database for the schema to querying a high latency cache server will still save you time. In practice, your cache should be much lower latency than your database and therefore save you much more time and if your application is remotely complicated, Yii will be loading schema from multiple tables on each request so schema caching can make a huge difference in request response time.
0/5000
Từ: -
Sang: -
Kết quả (Việt) 1: [Sao chép]
Sao chép!
If you set Yii to log database queries ('enableParamLogging' => true in the db settings of your config file) you can see that Yii queries the database frequently for ActiveRecord queries.For example: Say you have a model named User and you tell Yii to get you a user by primary key, Yii will query the database three(!) times. It will do a show columns query, then a show create table query, then finally it will query the database for the actual data. Those first two queries are so Yii knows the schema of your user table. If the round trip time from your application server to your database server is 100ms (if it's really this slow, you should do something about it), then those two queries to get the schema will add a minimum of 200ms to your application response time. It will do this for every single request that populates your User model. Depending on how your application is written, it might even do that multiple times in a single request.If, on the other hand, you tell Yii to use schema caching, Yii will check the cache to see if it already knows the schema to your user table and if it does, it will use that instead of hitting the database. There is still latency involved in checking the cache, but hopefully it's less than or equal to the latency to the database server. Say you're using a Redis server for caching and it also has a latency of 100ms (also ridiculously long). Caching the schema will still be faster than querying the database, because Yii will only need to query the cache a single time to retrieve the schema, versus two trips to the database.So in this example switching from querying a high latency database for the schema to querying a high latency cache server will still save you time. In practice, your cache should be much lower latency than your database and therefore save you much more time and if your application is remotely complicated, Yii will be loading schema from multiple tables on each request so schema caching can make a huge difference in request response time.
đang được dịch, vui lòng đợi..
Kết quả (Việt) 2:[Sao chép]
Sao chép!


Nếu bạn đặt Yii để đăng nhập truy vấn cơ sở dữ liệu ( 'enableParamLogging' => true trong các thiết lập db của tập tin cấu hình của bạn), bạn có thể thấy rằng Yii truy vấn cơ sở dữ liệu thường xuyên cho các truy vấn ActiveRecord. Ví dụ: Giả sử bạn có một mô hình tên người dùng và bạn nói Yii để giúp bạn có một người sử dụng bằng cách khóa chính, Yii sẽ truy vấn cơ sở dữ liệu ba lần (!). Nó sẽ làm một truy vấn các cột hiển thị, sau đó là một chương trình tạo các truy vấn bảng, sau đó cuối cùng nó sẽ truy vấn cơ sở dữ liệu cho các dữ liệu thực tế. Hai câu hỏi đầu tiên là như vậy Yii biết giản đồ của bảng người dùng của bạn. Nếu thời gian chuyến đi vòng từ máy chủ ứng dụng của bạn đến máy chủ cơ sở dữ liệu của bạn là 100ms (nếu nó thực sự này chậm, bạn nên làm một cái gì đó về nó), sau đó hai truy vấn để có được các giản đồ sẽ thêm tối thiểu là 200ms để thời gian phản ứng ứng dụng của bạn. Nó sẽ làm điều này cho tất cả các yêu cầu duy nhất mà populates mô hình người dùng. Tùy thuộc vào cách ứng dụng của bạn được viết, thậm chí nó có thể làm điều đó nhiều lần trong một yêu cầu duy nhất. Nếu, mặt khác, bạn nói với Yii sử dụng giản đồ bộ nhớ đệm, Yii sẽ kiểm tra bộ nhớ cache để xem nếu nó đã biết giản đồ để bạn bảng người sử dụng và nếu có, nó sẽ sử dụng thay vì nhấn cơ sở dữ liệu. Có vẫn còn độ trễ liên quan đến việc kiểm tra bộ nhớ cache, nhưng hy vọng nó là nhỏ hơn hoặc bằng với độ trễ để các máy chủ cơ sở dữ liệu. Giả sử bạn đang sử dụng một máy chủ Redis cho bộ nhớ đệm và nó cũng có một độ trễ 100ms (còn ridiculously dài). Caching giản đồ vẫn sẽ nhanh hơn so với truy vấn cơ sở dữ liệu, vì Yii sẽ chỉ cần truy vấn bộ nhớ cache một lần duy nhất để lấy đồ, so với hai chuyến đi đến các cơ sở dữ liệu. Vì vậy, trong ví dụ này chuyển từ truy vấn một cơ sở dữ liệu độ trễ cao cho các giản đồ để truy vấn một máy chủ cache độ trễ cao vẫn sẽ giúp bạn tiết kiệm thời gian. Trong thực tế, bộ nhớ cache của bạn nên có độ trễ thấp hơn nhiều so với cơ sở dữ liệu của bạn và do đó bạn tiết kiệm thời gian hơn nhiều và nếu ứng dụng của bạn rất phức tạp từ xa, Yii sẽ tải giản đồ từ nhiều bảng vào từng yêu cầu để đồ bộ nhớ đệm có thể làm cho một sự khác biệt rất lớn trong đáp ứng yêu cầu thời gian.






đang được dịch, vui lòng đợi..
 
Các ngôn ngữ khác
Hỗ trợ công cụ dịch thuật: Albania, Amharic, Anh, Armenia, Azerbaijan, Ba Lan, Ba Tư, Bantu, Basque, Belarus, Bengal, Bosnia, Bulgaria, Bồ Đào Nha, Catalan, Cebuano, Chichewa, Corsi, Creole (Haiti), Croatia, Do Thái, Estonia, Filipino, Frisia, Gael Scotland, Galicia, George, Gujarat, Hausa, Hawaii, Hindi, Hmong, Hungary, Hy Lạp, Hà Lan, Hà Lan (Nam Phi), Hàn, Iceland, Igbo, Ireland, Java, Kannada, Kazakh, Khmer, Kinyarwanda, Klingon, Kurd, Kyrgyz, Latinh, Latvia, Litva, Luxembourg, Lào, Macedonia, Malagasy, Malayalam, Malta, Maori, Marathi, Myanmar, Mã Lai, Mông Cổ, Na Uy, Nepal, Nga, Nhật, Odia (Oriya), Pashto, Pháp, Phát hiện ngôn ngữ, Phần Lan, Punjab, Quốc tế ngữ, Rumani, Samoa, Serbia, Sesotho, Shona, Sindhi, Sinhala, Slovak, Slovenia, Somali, Sunda, Swahili, Séc, Tajik, Tamil, Tatar, Telugu, Thái, Thổ Nhĩ Kỳ, Thụy Điển, Tiếng Indonesia, Tiếng Ý, Trung, Trung (Phồn thể), Turkmen, Tây Ban Nha, Ukraina, Urdu, Uyghur, Uzbek, Việt, Xứ Wales, Yiddish, Yoruba, Zulu, Đan Mạch, Đức, Ả Rập, dịch ngôn ngữ.

Copyright ©2024 I Love Translation. All reserved.

E-mail: