单位新装一台MAS短信机,由于使用的是内部网络,内网不允许使用外网DNS解释,只能使用内网DNS,在开发单位内的一些应用系统与MAS对接发短信时遇到了接口初始化及发送短信都非常缓慢,等待时间在10秒左右。

    由于MAS机是一台Linux的服务器,采用的是MYSQL数据库,采用DB或API方式连接MAS其实就是连接到MAS机的MYSQL,修改MAS机上的/etc/resolv.conf,将原使用google的8.8.8.8的DNS改为内网的DNS即可解决。

    而MYSQL的连接是这样的:当接收到连接请求后,会通过本机的DNS检查连接者的IP,主要是为了匹配mysql.user里的权限记录,因为有些用户可能使用hostname定义。如果DNS无法解释或不正确,则导致连接等待。这个问题可以通过修改配置让MYSQL不能使用hostname的连接,则会快很多,方法是修改mysql配置文件my.cnf,在[mysqld]一节中增加skip-name-resolve