官术网_书友最值得收藏!

Ensure you know your resources

It is crucial to properly tune the resources (databases, thread pools, and so on). Since Java EE 6, some resources can be defined in the application. For instance, a DataSource can be defined with:

@DataSourceDefinition(
name = "java:app/jdbc/quote_manager",
className = "com.mysql.jdbc.Driver",
url = "jdbc:mysql://localhost:3306/quote_manager",
user = "root",
password = "password"
)
public class DataSourceConfiguration {
}

This is often a bad idea since you can't externally configure it (it is hardcoded). Thus, you often end up configuring the resources in server specific files or UI.

This is a good practise to avoid in the application. But outside the application, Java EE doesn't define any way or standard to configure the server. Everything is vendor specific. However, you will need to tune it! For that reason, it is crucial to ensure you know:

  • What kind of resources your application needs
  • How to create them and configure them in your server

This is a great start for the application side but resources are generally linked to an external side like a database. Here again, it will be very important to know the resource itself, how it is configured and potentially how to tune it if needed. A very simple example is the number of connections you can use on a database. If you can only use 20 connections, no need to configure 100 in the application, this would generate a lot of errors and slow down the application, or just make it fail depending on how the pool is configured.

主站蜘蛛池模板: 河源市| 漠河县| 冷水江市| 儋州市| 叶城县| 嵩明县| 绥德县| 宁安市| 金乡县| 盐池县| 白河县| 当涂县| 云阳县| 徐闻县| 株洲市| 崇明县| 芜湖市| 邯郸县| 思南县| 田东县| 宝坻区| 简阳市| 忻城县| 江山市| 乐安县| 晋宁县| 和林格尔县| 五常市| 米脂县| 湘潭县| 清苑县| 宝清县| 信宜市| 水城县| 塘沽区| 三明市| 黎川县| 沐川县| 鹿邑县| 那坡县| 林周县|