最近遇到的若干技术问题

1.VIM显示文件的行号。
 Linux的配置文件出错时,控制台提示会具体到某一行。
VIM打开文件,默认不显示行号。
可以使用命令打开::set number

2.Tomcat端口号冲突问题。
  一台机器上启动2个Tomcat,它们需要配置监听不同的端口。
  有2个端口号都需要不同:
  tomcat/conf/server.xml
   <Connector port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
   <Connector port="8009" protocol="AJP/1.3" redirectPort="8443"/>
  建议把这2个Connector的端口号,不要一样,redirectPort最好也不要相同。

  比如一个Tomcat用8080、8009、8443,另外一个Tomcat用9080、9009、9443。

3.Nginx配置多个域名映射。
  最初的需求:
  fansunion.cn,blog.fansunion.cn映射到Tomcat8080,
  xiaolei.fansunion.cn也映射到Tomcat8080,但是直接作为静态资源访问的,没有弄成功。
  后来,想把xiaolei.fansunion.cn映射到Tomcat8080的另外一个项目,也没有搞成功。
  
  对Nginx不是很熟悉,也不想研究太多,只想现在可以找到解决办法就行了,于是尝试了另外一种方式。

  fansunion.cn映射到一台Tomcat,8080端口
 xiaolei.fansunion.cn映射到另外一台Tomcat,9080端口。

  具体配置
server{
      listen 80;
      server_name fansunion.cn;
      location / {
          proxy_pass http://localhost:8080;
     }

  }

  server{
      listen 80;
      server_name xiaolei.fansunion.cn;
      location / {
          proxy_pass http://localhost:9080;
     }

  }

 4.网站访问比较慢。
  除了自身带宽和服务器问题, 可以做的是,把JS、CSS、图片等静态资源,压缩一下。
 比如Jquery、Bootstrap的JS,如果不压缩,好几百KB,压缩之后,就几十KB。
 比如有的图片,就有2M多,压缩之后只有几百KB。

5.是否使用CDN的问题。
  jquery、Bootstrap等知名的开源JS组件,网上有CDN服务。
  目前,我还没有怎么使用,主要是考虑到部署麻烦。
  除非,本地开发的时候,就直接使用 CDN的js。
  
 或者麻烦一点,做一个配置选项,表明是部署,还是开发,然后动态include必要的JS。

6.JS引入的顺序问题。
 网上主流建议是,放在页面的后面。
 我大部分情况,还是之前的习惯,先后引入CSS、JS、页面主体。
 JS放在最后引入,试试看吧,没有具体对比过放在前面和后面的差异。

7.开发和测试的数据库是否需要只用一个。
  目前,我自己的一些小项目,本地用了一个mysql,线上也有单独的mysql。
  但是,在开发过程中,分别弄挺麻烦的。
  因为,开发中,数据库的结构不断变更,线上的还需要构造数据,所以呢,为了图方便,我打算只用线上服务器上的数据库。

  等项目真正“上线”的时候,本地开发再单独建立一个数据库。

8.和Boss交流的时候,boss分享了一点经验,我也知道。
  任务比较多的时候,想分散到多台机器上执行,但是发现不同机器处理的时间相差比较大。
  一种比较可行的方法是,把任务的粒度划分的更小一些。
 比如从1到10000个任务,每分成10个1000和100个100是不同的。
 粒度比较小的时候,同样一个任务,比如处理10条数据,可能差异比较大。因为部分数据可能很耗时,如果数目比较大,更有可能平均一些。
  
原文地址:https://www.cnblogs.com/qitian1/p/6462918.html