应用内部通讯
更新时间:
本章将为您介绍如何在一个应用中实现多个节点间的通讯
服务名称的定义
在应用配置中每个节点都有一个配置项服务名称
,服务名称是您对一个节点的名称描述,也是内部节点路由的一个名称。
能力说明
这里通过一个具体case来阐述内部通讯的机制,假设我们有一个停车管理应用,他是由3个节点组成(tomcat节点提供Web服务及业务逻辑,MySQL节点用于存储数据,redis节点用于缓存数据)tomcat的Java代码需要通过jdbc连接上MySQL服务才能完成数据库的访问,这里以一段伪代码来说明
public static String HOST = "mysql";
public static String PORT = "3306";
public static String DATABASE_NAME = "mysql";
public static String USER_NAME = "user";
public static String PASSWORD = "Tjsh2K22";
public static Connection getConn() throws Exception {
Class.forName("com.mysql.jdbc.Driver");
System.out.println("成功加载驱动");
String url = "jdbc:mysql://" + HOST + ":" + PORT + "/" + DATABASE_NAME + "?user=" + USER_NAME + "&password=" + PASSWORD + "&useUnicode=true&characterEncoding=UTF8";
Connection connection = DriverManager.getConnection(url);
System.out.println("成功获取连接");
return connection;
}
从上面的应用配置和代码中可以看到,以往URL的组成中的HOST一般是固定IP/域名,一旦容器化之后HOST即为需要访问的节点的服务名称
文档内容是否对您有帮助?