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

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.

主站蜘蛛池模板: 商都县| 辽中县| 吉木乃县| 随州市| 伊春市| 大姚县| 张家口市| 屏山县| 禹城市| 白玉县| 台北县| 江阴市| 汪清县| 皮山县| 湖州市| 石家庄市| 永仁县| 通渭县| 东辽县| 牟定县| 清水县| 大英县| 绥滨县| 洛隆县| 准格尔旗| 民权县| 镇雄县| 密山市| 揭东县| 奇台县| 方山县| 哈密市| 四子王旗| 湘乡市| 凤台县| 斗六市| 民权县| 伊宁县| 瓦房店市| 无为县| 隆化县|