草庐IT

Nginx实战基础篇七 最新源码包通过脚本部署LAMP搭建Discuz论坛

凌激冰 2023-03-28 原文
 Nginx实战基础篇七 最新源码包通过脚本部署LAMP搭建Discuz论坛

 

版权声明:

本文遵循“署名非商业性使用相同方式共享 2.5 中国大陆”协议

您可以自由复制、发行、展览、表演、放映、广播或通过信息网络传播本作品

您可以根据本作品演义自己的作品

您必须按照作者或者许可人指定的方式对作品进行署名。

您不得将本作品用于商业目的。

如果您改变、转换本作品或者以本作品为基础进行创作,您只能采用与本协议相同的许可协议发布基于本作品的演绎作品。

对任何再使用或者发行,您都必须向他人清楚地展示本作品使用的许可协议条款。

如果得到著作权人的许可,您可以不受任何这些条件的限制。

Designed by 小诺(www.rsyslog.org  dreamfire.blog.51cto.com

LAMP是一个缩写,它指一组通常一起使用来运行动态网站或者服务器的自由软件:Linux+Apache+MySQL+php,自从Nginx的出现,Apache的一部分市场份额被Nginx获得,原因是由于Apache的高并发性能不及Nginx.前不久Apache团队发布了httpd的2.4版本,性能上做了非常大的提升,为的就是挽回失去的市场份额,当然2.4版本刚刚出来不久,需要1-2年的时间才能够流通.本实验就是通过安装2.4版本,mysql用的是mysql-5.5版本进行安装部署的.接着我们开始进入LAMP搭建。现实生产环境下,不同的业务需求都不相同,因此更多的企业会考虑使用×××LAMP环境,这样可以更加灵活使用各个功能参数将性能调制到最佳状态。当然如果贵公司的环境比较简单,可以考虑rpm包安装。

注意:本实验环境基本上都是从各大官网下载的最新安装包。 

和本实验有关的博文可参看(有些命令在以下博文中有,这里不做过多介绍)

最新、最全面的LAMP+wordpress安装过程http://dreamfire.blog.51cto.com/418026/197595

LinuxApacheMySQL+PHP的综合应用案例http://dreamfire.blog.51cto.com/418026/166056

Apache下域名虚拟主机在个人主页目录上实现过程http://dreamfire.blog.51cto.com/418026/163612

RHEL6.3 DNS配置详解一 DNS相关概念理解及配置基础http://dreamfire.blog.51cto.com/418026/1091943

Nginx实战基础篇六 通过源码包编译安装部署LNMP搭建Discuz论坛http://dreamfire.blog.51cto.com/418026/1148203 

注意:本实验没有考虑selinux以及防火墙问题,请在实验过程中将selinux修改为permission或者

disable模式,防火墙关闭.

一、系统环境:

  1. [root@rhel6u3-4 ~]# uname -r 
  2. 2.6.32-279.el6.i686 
  3. [root@rhel6u3-4 ~]# cat /etc/redhat-release  
  4. Red Hat Enterprise Linux Server release 6.3 (Santiago) 
  5. [root@rhel6u3-4 ~]# 
  6. [root@rhel6u3-4 ~]# cd mypackages/ 
  7. [root@rhel6u3-4 mypackages]# ll 
  8. -rwxr-xr-x.  1 root  root    982243 Dec 18 07:24 apr-1.4.6.tar.gz 
  9. -rwxr-xr-x.  1 root  root    774770 Dec 18 07:24 apr-util-1.4.1.tar.gz 
  10. -rw-r--r--.  1 root  root   9489788 Mar  1 19:21 Discuz.zip 
  11. -rwxr-xr-x.  1 root  root   1273059 Dec 18 07:24 gd-2.0.34.tar.gz 
  12. -rwxr-xr-x.  1 root  root   5616185 Dec 18 07:24 httpd-2.4.2.tar.gz 
  13. -rwxr-xr-x.  1 root  root    875425 Dec 18 07:24 libmcrypt-2.5.8.tar.bz2 
  14. -rwxr-xr-x.  1 root  root    655906 Dec 18 07:24 mhash-0.9.9.9.tar.bz2 
  15. -rwxr-xr-x.  1 root  root  24660795 Dec 18 07:25 mysql-5.5.25a.tar.gz 
  16. -rwxr-xr-x.  1 root  root  14060505 Dec 18 07:25 php-5.4.4.tar.gz 
  17. -rwxr-xr-x.  1 root  root    782725 Dec 18 07:25 re2c-0.13.5.tar.gz 
  18. -rwxr-xr-x.  1 root  root    134833 Dec 18 07:25 xcache-2.0.1.tar.gz 
  19. -rw-r--r--.  1 root  root   4323279 Dec 11  2009 phpMyAdmin-2.11.0-all-languages.tar.gz 
  20. [root@rhel6u3-4 mypackages]# 
 二、开始安装部署LAMP

脚本如下

  1. [root@rhel6u3-4 mypackages]# vim packages  \\由于整个环境会涉及比较多的依赖关系包,所以我们先将一些依赖包装上。(根据不同的环境可能不仅限于这些包)这里创建了一个安装依赖包的函数,在脚本中调用即可. 
  2. #Install install LAMP from dependent Packages! 
  3.  
  4. PKG='gcc-c++ flex bison autoconf  automake libpng-devel libjpeg-devel freetype-devel openjpeg-libs fontconfig-devel libXpm-devel cmake ncurses-devel apr-devel pcre-devel apr-util-devel openssl-devel libxml2-devel curl-devel'  \\可以将所需要的包全部卸载里面进行安装 
  5. \\以下是个查询包是否安装机制,如果没有安装则安装 
  6. for i in $PKG 
  7.    do 
  8.        rpm -q $i &> /dev/null 
  9.        [ $? -ne 0 ] && UNPKG="$UNPKG $i"  
  10.    done 
  11.        [ -n "$UNPKG" ] && yum install $UNPKG -y  
  12. echo "Dependent Packages install OK...." 
  13. [root@rhel6u3-4 mypackages]# 

  1. [root@rhel6u3-4 mypackages]# vim lamp.sh //以下是LAMP搭建脚本 
  2. #!/bin/bash 
  3. #install LAMP from Source Packages 
  4. #Designed by xiaonuo http://dreamfire.blog.51cto.com  www.rsyslog.org   
  5. #If you have any questions,please send e-mail to yum.linux@gmail.com  
  6.  
  7. #install dependent Package for LAMP, Please submit all source package into the directory ~/mypackages! 
  8. mkdir -p  ~/mypackages 
  9. yum clean all 
  10. yum makecache 
  11. .  ~/mypackages/packages \\调用函数安装系统依赖包 
  12. \\除了这些redhat光盘自带的包以外,还有一些其他的源码包。 
  13. #install GD2 \\GD2是一个生成图片所使用的依赖包 
  14. cd ~/mypackages/ 
  15. tar xf gd-2.0.34.tar.gz 
  16. cd gd-2.0.34 
  17. ./configure --prefix=/usr/local/gd2 
  18. make && make install 
  19.  
  20. #install apr \\apr是apache的一个依赖包,虽然系统是自带这个包,但是版本太低,不适用于apache2.4版本。 
  21. cd ~/mypackages/ 
  22. tar xf apr-1.4.6.tar.gz 
  23. cd apr-1.4.6 
  24. ./configure --prefix=/usr/local/apr 
  25. make && make install 
  26.  
  27. #install apr-util 
  28. cd ~/mypackages/ 
  29. tar xf apr-util-1.4.1.tar.gz 
  30. cd apr-util-1.4.1 
  31. ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/ 
  32. make && make install 
  33.  
  34. # install libmcrypt mhash \\linmcrypt与mhash是php会依赖的一些包 
  35. cd ~/mypackages/ 
  36. tar xf libmcrypt-2.5.8.tar.bz2 
  37. cd libmcrypt-2.5.8 
  38. ./configure --prefix=/usr/local/libmcrypt 
  39. make && make install 
  40.  
  41. cd ~/mypackages/ 
  42. tar xf mhash-0.9.9.9.tar.bz2 
  43. cd mhash-0.9.9.9 
  44. ./configure --prefix=/usr/local/mhash 
  45. make && make install 
  46.  
  47. #install mysql-5.5.25 and configure mysql! \\Mysql这些选择的是mysql5.5版本,些版本一改原有的编译方式,使用cmake代替了原来的configure。 
  48. useradd mysql 
  49. cd ~/mypackages/ 
  50. tar xf mysql-5.5.25a.tar.gz 
  51. cd mysql-5.5.25a 
  52. cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS:STRING=all -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/var/lib/mysql 
  53. cmake . -LH查看帮助,类似于./configure –help 
  54. -DCMAKE_INSTALL_PREFIX= 指定安装主目录 
  55. -DMYSQL_DATADIR 指定库文件存放目录 
  56. -DMYSQL_UNIX_ADDR 指定socket文件所在路径 
  57. -DDEFAULT_CHARSET 指定使用的默认字符编码 
  58. -DDEFAULT_COLLATION 指定使用的默认字符规则 
  59. -DWITH_EXTRA_CHARSETS 其他字符码支持 
  60. -DWITH_MYISAM_STORAGE_ENGINE 编译myisam存储引擎 
  61. -DWITH_INNOBASE_STORAGE_ENGINE 编译innodb存储引擎 
  62. -DWITH_READLINE 增加readline支持,通过 readline,可以方便的在命令行上面移动,增删,复制,粘贴,搜索。 
  63. -DENABLED_LOCAL_INFILE 让mysql支持从本地文件导入数据库\\ 
  64. make && make install 
  65.  
  66. cp /usr/local/mysql/support-files/my-small.cnf /etc/my.cnf 
  67. sed -i '37iuser = mysql' /etc/my.cnf 
  68. mkdir /var/lib/mysql/ 
  69. chown mysql. /var/lib/mysql 
  70. echo "export PATH=$PATH:/usr/local/mysql/bin/" >> ~/.bashrc 
  71. . ~/.bashrc 
  72. /usr/local/mysql/scripts/mysql_install_db --user=mysql --datadir=/var/lib/mysql --basedir=/usr/local/mysql --builddir=/usr/local/mysql 
  73.  
  74. cp ~/mypackages/mysql-5.5.25a/support-files/mysql.server /etc/init.d/mysqld  \\创建启动脚本 
  75. chmod 755 /etc/init.d/mysqld 
  76. service mysqld start 
  77. chkconfig --add mysqld 
  78. mysqladmin password '123.com'  \\创建root密码 
  79.  
  80. #install httpd 
  81. cd ~/mypackages/ 
  82. tar xf httpd-2.4.2.tar.gz 
  83. cd httpd-2.4.2 
  84. ./configure --prefix=/usr/local/apache2 --enable-cache --enable-cache-disk --enable-so --enable-sed --enable-http --enable-mpms-shared=all --enable-cgid --enable-rewrite --enable-vhost-alias --enable-ssl --with-mpm=event --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/ 
  85. make && make install 
  86. /usr/local/apache2/bin/apachectl start 
  87. links -dump 127.0.0.1  \\完成之后记得测试httpd环境是否OK 
  88. echo 'If you see It works!,Congratulation! Please press enter ' 
  89. #read \\如果你不放心,可以设置断点,先测试网站是否可以访问,如果OK,按回车继续即可 
  90.  
  91. ## install php 
  92. cd ~/mypackages/ 
  93. tar xf php-5.4.4.tar.gz 
  94. cd php-5.4.4 
  95. ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-config-file-scan-dir=/usr/local/php/etc/php.d --with-mysqli=/usr/local/mysql/bin/mysql_config --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir --enable-xml --with-pdo-mysql=/usr/local/mysql/ --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-mbstring --with-mcrypt=/usr/local/libmcrypt/ --with-gd --enable-gd-native-ttf --with-openssl --with-mhash=/usr/local/mhash/ --enable-pcntl --enable-sockets --enable-zip --enable-soap --with-apxs2=/usr/local/apache2/bin/apxs --enable-cgi --disable-cli 
  96. php常见参数介绍 
  97. --with-config-file-path与--with-config-file-scan-dir在指定php配置文件的路径 
  98. --with-mysql和--with-mysqli在指定你的mysql的位置和它的相关工具 
  99. --with-iconv-dir,--with-freetype-dir,-with-jpeg-dir,--with-png-dir,--withgd,--with-zlib,--with-libxml-dir这些都是在启用对某种文件的支持 
  100. --with-curl和--with-curlwrappers是用于支持curl函数,此函数允许你用不同的协议连接和沟通不同的服务器 
  101. --with-openssl,--with-mhash,--with-mcrypt这都是和加密有关的参数,启用它们是为了让php可以更好的支持各种加密。 
  102. "--enable-bcmath" 高精度数学运算组件。 
  103. "--enable-shmop" 和 "--enable-sysvsem" 使得你的PHP系统可以处理相关的IPC函数 。IPC是一个Unix标准通讯机制,它提供了使得在同一台主机不同进程之间可以互相通讯的方法。 
  104. "--enable-inline-optimization" 栈堆指针和优化线程。 
  105. "--enable-pcntl" 多线程优化。 
  106. make && make install 
  107. mkdir /usr/local/php/etc 
  108. cp ~/mypackages/php-5.4.4/php.ini-production /usr/local/php/etc/php.ini 
  109.  
  110. #install re2c xcache \\XCache是一个开源的opcode和var的缓存器,其工作原理是通过内存来缓存php的编译结果,当用户读取php网页时后台的php编译器不参加编译工作,而是将内存中的结果直接供用户读取,从而减轻频繁编译对服务器造成的压力。与同类的apc、eaccelerator相比XCache具有覆盖速度快、大流量/高负载的机器上运行稳定、能够快速跟进php版本。安装xcache之前先安装xcache的一个信赖包re2c。之后安装xcache 
  111. cd ~/mypackages/ 
  112. tar xf re2c-0.13.5.tar.gz 
  113. cd re2c-0.13.5 
  114. ./configure 
  115. make && make install 
  116. cd ~/mypackages/ 
  117. tar xf xcache-2.0.1.tar.gz 
  118. cd xcache-2.0.1 
  119. /usr/local/php/bin/phpize 
  120. ./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config --enable-xcache-optimizer --enable-xcache-assembler --enable-xcache-encoder --enable-xcache-decoder 
  121. make && make install 
  122.  
  123. #Configure Xcache 
  124. cp -r ~/mypackages/xcache-2.0.1/admin/ /usr/local/apache2/htdocs/ 
  125. chmod 755 /usr/local/apache2/htdocs/admin 
  126. chmod a+r /usr/local/apache2/htdocs/admin/* 
  127. mkdir -p  /usr/local/php/etc/php.d 
  128. cp ~/mypackages/xcache-2.0.1/xcache.ini /usr/local/php/etc/php.d/ 
  129.  
  130. #vim /usr/local/php/etc/php.d/xcache.ini 
  131. XCACHE=$(find /usr/local/php/ -name xcache.so) \\创建一个变量内容为xcache.so的路径 
  132. sed -i "s%/usr/local/lib/php/extensions/non-debug-non-zts-xxx/xcache\.so%$XCACHE%" /usr/local/php/etc/php.d/xcache.ini   
  133. sed -i 's%mOo%admini%' /usr/local/php/etc/php.d/xcache.ini  \\创建用户名为admini 
  134. sed -i 's%^xcache\.admin\.pass.*%xcache.admin.pass = "cbff36039c3d0212b3e34c23dcde1456"%' /usr/local/php/etc/php.d/xcache.ini \\创建密码为123.com, xcache.admin.pass 是一个通过md5加密之后的密码 
  135. cat >> /usr/local/apache2/htdocs/phpinfo.php <<endf \\创建PHP测试 
  136. <?php 
  137. phpinfo(); 
  138. ?>
  139. endf 
  140. echo "please input http://127.0.0.1/phpinfo.php to IE! if it's ok,please press enter " 
  141. #read\\可设置断点测试php是否OK 
  142.  
  143.  
  144. #vim /usr/local/apache2/conf/httpd.conf \\配置apache与php集成 
  145. sed -i '375iAddType application/x-httpd-php \.php' /usr/local/apache2/conf/httpd.conf \\在375行下面插入一行 
  146. sed -i 's%index\.html%index.html index.php%' /usr/local/apache2/conf/httpd.conf \\写上index.php主页 
  147. sed -i  '/httpd-mpm\.conf/s/#//' /usr/local/apache2/conf/httpd.conf  
  148. sed -i  '/httpd-vhosts\.conf/s/#//' /usr/local/apache2/conf/httpd.conf \\开启虚拟主机 
  149. sed -i  '/httpd-info\.conf/s/#//' /usr/local/apache2/conf/httpd.conf  
  150. sed -i  '/httpd-default\.conf/s/#//' /usr/local/apache2/conf/httpd.conf 
  151. \\注意:以上 4 个扩展配置文件中的设置需要根据实际需要进行更改。 
  152. mkdir -p /usr/local/apache2/htdocs/bbs \\创建虚拟主机目录,可更换为其他目录 
  153. #vim /usr/local/apache2/conf/extra/httpd-vhosts.conf  
  154. cat >/usr/local/apache2/conf/extra/httpd-vhosts.conf <<endf   
  155. NameVirtualHost  *:80 
  156. <VirtualHost *:80>  \\创建虚拟主机1,用于配置访问DZ论坛 
  157.     ServerAdmin webmaster@rsyslog.org 
  158.     DocumentRoot "/usr/local/apache2/htdocs/bbs" 
  159.     ServerName bbs.rsyslog.org 
  160.     ErrorLog "logs/bbs.rsyslog.org-error_log" 
  161.     CustomLog "logs/bbs.rsyslog.org-access_log" common 
  162. </VirtualHost> 
  163.  
  164. <VirtualHost *:80> \\配置虚拟主机2,用于访问xcache管理页面以及md5加密生成页面 
  165.     ServerAdmin webmaster@rsyslog.org 
  166.     DocumentRoot "/usr/local/apache2/htdocs/admin" 
  167.     ServerName admin.rsyslog.org 
  168.     ErrorLog "logs/admin.rsyslog.org-error_log" 
  169.     CustomLog "logs/admin.rsyslog.org-access_log" common 
  170. </VirtualHost> 
  171. endf 
  172. /usr/local/apache2/bin/apachectl stop 
  173. /usr/local/apache2/bin/apachectl start 
  174. #http://admin.rsyslog.org/index.php  Look xcache status! Need input username and password! 
  175. #http://admin.rsyslog.org/mkpassword.php  Create MD5 password 
  176. #http://bbs.rsyslog.org/install  Install Discuz 
  177. #http://bbs.rsyslog.org  Access Discuz! 
  178. \\以上脚本结束 
  179. 请在DNS中添加A记录 
  180. bbs A   192.168.100.104 
  181. admin   A   192.168.100.104 
 

实验结果如下:

 

 

实验扩展

1、   安装mysqladmin管理mysql

 

  1. [root@rhel6u3-4 admin]# mkdir /usr/local/apache2/htdocs/admin/phpmyadmin 
  2. [root@rhel6u3-4 mypackages]# tar xf phpMyAdmin-2.11.0-all-languages.tar.gz 
  3. [root@rhel6u3-4 mypackages]# cp -rp phpMyAdmin-2.11.0-all-languages/* /usr/local/apache2/htdocs/admin/phpmyadmin/ 
  4. [root@rhel6u3-4 mypackages]# cd /usr/local/apache2/htdocs/admin/phpmyadmin/ 
  5. [root@rhel6u3-4 phpmyadmin]# cp -p config.sample.inc.php config.inc.php 
  6. [root@rhel6u3-4 phpmyadmin]# vim config.inc.php 
  7. $cfg['blowfish_secret'] = 'rsyslog.org'; 

 

以上为最简单的配置,可以看到phpmyadmin可以对数据库进行备份恢复、对表进行填写修改删除等操作,相对于命令操作而言还是挺方便的。

 

2、   优化php,提高安全性

注意:以下为php的内部函数部分,可根据公司开发人员或者自身需求而定。

 

  1. [root@rhel6u3-4 admin]# vim /usr/local/php/etc/php.ini 
  2. disable_functions = phpinfo,passthru,exec,system,chroot,scandir,chgrp,chown,escapeshellcmd,escapeshellarg,shell_exec, 
  3. proc_open,proc_get_status,error_log,ini_alter,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,sy mlink,leak, popepassthru,stream_socket_server 
 

3、   给论坛导入数据(一个游戏论坛的数据,呵呵!

 

  1. [root@rhel6u3-4 mypackages]# cp dbbackup.sql  /var/lib/mysql/ 
  2. [root@rhel6u3-4 mysql]# mysql -uroot –p 
  3. mysql> use dz_bbs 
  4. mysql> source dbbackup.sql 

后面陆续会讲 web层的负载均衡,负载均衡层的高可用,数据库的负载均衡等等

有关Nginx实战基础篇七 最新源码包通过脚本部署LAMP搭建Discuz论坛的更多相关文章

  1. ruby-on-rails - 如何优雅地重启 thin + nginx? - 2

    我的瘦服务器配置了nginx,我的ROR应用程序正在它们上运行。在我发布代码更新时运行thinrestart会给我的应用程序带来一些停机时间。我试图弄清楚如何优雅地重启正在运行的Thin实例,但找不到好的解决方案。有没有人能做到这一点? 最佳答案 #Restartjustthethinserverdescribedbythatconfigsudothin-C/etc/thin/mysite.ymlrestartNginx将继续运行并代理请求。如果您将Nginx设置为使用多个上游服务器,例如server{listen80;server

  2. 报告回顾丨模型进化狂飙,DetectGPT能否识别最新模型生成结果? - 2

    导读语言模型给我们的生产生活带来了极大便利,但同时不少人也利用他们从事作弊工作。如何规避这些难辨真伪的文字所产生的负面影响也成为一大难题。在3月9日智源Live第33期活动「DetectGPT:判断文本是否为机器生成的工具」中,主讲人Eric为我们讲解了DetectGPT工作背后的思路——一种基于概率曲率检测的用于检测模型生成文本的工具,它可以帮助我们更好地分辨文章的来源和可信度,对保护信息真实、防止欺诈等方面具有重要意义。本次报告主要围绕其功能,实现和效果等展开。(文末点击“阅读原文”,查看活动回放。)Ericmitchell斯坦福大学计算机系四年级博士生,由ChelseaFinn和Chri

  3. UE4 源码阅读:从引擎启动到Receive Begin Play - 2

    一、引擎主循环UE版本:4.27一、引擎主循环的位置:Launch.cpp:GuardedMain函数二、、GuardedMain函数执行逻辑:1、EnginePreInit:加载大多数模块int32ErrorLevel=EnginePreInit(CmdLine);PreInit模块加载顺序:模块加载过程:(1)注册模块中定义的UObject,同时为每个类构造一个类默认对象(CDO,记录类的默认状态,作为模板用于子类实例创建)(2)调用模块的StartUpModule方法2、FEngineLoop::Init()1、检查Engine的配置文件找出使用了哪一个GameEngine类(UGame

  4. postman接口测试工具-基础使用教程 - 2

    1.postman介绍Postman一款非常流行的API调试工具。其实,开发人员用的更多。因为测试人员做接口测试会有更多选择,例如Jmeter、soapUI等。不过,对于开发过程中去调试接口,Postman确实足够的简单方便,而且功能强大。2.下载安装官网地址:https://www.postman.com/下载完成后双击安装吧,安装过程极其简单,无需任何操作3.使用教程这里以百度为例,工具使用简单,填写URL地址即可发送请求,在下方查看响应结果和响应状态码常用方法都有支持请求方法:getpostputdeleteGet、Post、Put与Delete的作用get:请求方法一般是用于数据查询,

  5. 软件测试基础 - 2

    Ⅰ软件测试基础一、软件测试基础理论1、软件测试的必要性所有的产品或者服务上线都需要测试2、测试的发展过程3、什么是软件测试找bug,发现缺陷4、测试的定义使用人工或自动的手段来运行或者测试某个系统的过程。目的在于检测它是否满足规定的需求。弄清预期结果和实际结果的差别。5、测试的目的以最小的人力、物力和时间找出软件中潜在的错误和缺陷6、测试的原则28原则:20%的主要功能要重点测(eg:支付宝的支付功能,其他功能都是次要的)80%的错误存在于20%的代码中7、测试标准8、测试的基本要求功能测试性能测试安全性测试兼容性测试易用性测试外观界面测试可靠性测试二、质量模型衡量一个优秀软件的维度①功能性功

  6. 微信小程序开发入门与实战(Behaviors使用) - 2

    @作者:SYFStrive @博客首页:HomePage📜:微信小程序📌:个人社区(欢迎大佬们加入)👉:社区链接🔗📌:觉得文章不错可以点点关注👉:专栏连接🔗💃:感谢支持,学累了可以先看小段由小胖给大家带来的街舞👉微信小程序(🔥)目录自定义组件-behaviors    1、什么是behaviors    2、behaviors的工作方式    3、创建behavior    4、导入并使用behavior    5、behavior中所有可用的节点    6、同名字段的覆盖和组合规则总结最后自定义组件-behaviors    1、什么是behaviorsbehaviors是小程序中,用于实现

  7. ES基础入门 - 2

    ES一、简介1、ElasticStackES技术栈:ElasticSearch:存数据+搜索;QL;Kibana:Web可视化平台,分析。LogStash:日志收集,Log4j:产生日志;log.info(xxx)。。。。使用场景:metrics:指标监控…2、基本概念Index(索引)动词:保存(插入)名词:类似MySQL数据库,给数据Type(类型)已废弃,以前类似MySQL的表现在用索引对数据分类Document(文档)真正要保存的一个JSON数据{name:"tcx"}二、入门实战{"name":"DESKTOP-1TSVGKG","cluster_name":"elasticsear

  8. ruby-on-rails - 如何用不同的用户运行nginx主进程 - 2

    A/ctohttp://wiki.nginx.org/CoreModule#usermaster进程曾经以root用户运行,是否可以以不同的用户运行nginxmaster进程? 最佳答案 只需以非root身份运行init脚本(即/etc/init.d/nginxstart),就可以用不同的用户运行nginxmaster进程。如果这真的是你想要做的,你将需要确保日志和pid目录(通常是/var/log/nginx&/var/run/nginx.pid)对该用户是可写的,并且您所有的listen调用都是针对大于1024的端口(因为绑定(

  9. 【网络】-- 网络基础 - 2

    (本文是网络的宏观的概念铺垫)目录计算机网络背景网络发展认识"协议"网络协议初识协议分层OSI七层模型TCP/IP五层(或四层)模型报头以太网碰撞路由器IP地址和MAC地址IP地址与MAC地址总结IP地址MAC地址计算机网络背景网络发展        是最开始先有的计算机,计算机后来因为多项技术的水平升高,逐渐的计算机变的小型化、高效化。后来因为计算机其本身的计算能力比较的快速:独立模式:计算机之间相互独立。    如:有三个人,每个人做的不同的事物,但是是需要协作的完成。    而这三个人所做的事是需要进行协作的,然而刚开始因为每一台计算机之间都是互相独立的。所以前面的人处理完了就需要将数据

  10. elasticsearch源码关于TransportSearchAction【阶段三】 - 2

    1.回顾.TransportServicepublicclassTransportServiceextendsAbstractLifecycleComponentTransportService:方法:1publicfinalTextendsTransportResponse>voidsendRequest(finalTransport.Connectionconnection,finalStringaction,finalTransportRequestrequest,finalTransportRequestOptionsoptions,TransportResponseHandlerT>

随机推荐