Category: newest
-
Microsoft SQL Server 2005 Service Pack 4 下载地址 sql2005链接时,错误:18456解决方案
http://www.catalog.update.microsoft.com/search.aspx?q=kb2463332 找到downlaod即可。 sql2005链接时,错误:18456解决方案 右键使用管理员启动。 或者可以参考: http://blog.sina.com.cn/s/blog_613316c00100dzbh.html
-
centos7.2 安装ruby2.2.3版本
换yum源安装 ~]# yum install centos-release-scl-rh //会在/etc/yum.repos.d/目录下多出一个CentOS-SCLo-scl-rh.repo源 ~]# yum install rh-ruby23 -y //直接yum安装即可 ~]# scl enable rh-ruby23 bash //必要一步 ~]# ruby -v # ruby -v ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-linux] RVM 安装 先执行一条官方 https://rvm.io/ 复制来的长命令(…C0E3空格7D2B…): ~]#gpg –keyserver hkp://keys.gnupg.net –recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB 可能会等待十几秒时间,然后执行下面命令: ~]# \curl -sSL https://get.rvm.io | bash -s stable ~]# source /etc/profile.d/rvm.sh //按照提示,执行该命令 ~]# rvm list known // list一下可以安装的版本 ~]#…
-
MySQL 执行SQL脚本 报ERROR 1231 (42000)的解决办法
ERROR 1231 (42000): Variable ‘time_zone’ can’t be set to the value of ‘NULL’ ERROR 1231 (42000): Variable ‘sql_mode’ can’t be set to the value of ‘NULL’ ERROR 1231 (42000): Variable ‘foreign_key_checks’ can’t be set to the value of ‘NULL’ ERROR 1231 (42000): Variable ‘unique_checks’ can’t be set to the value of ‘NULL’ ERROR 1231 (42000):…
-
锡林郭勒盟大中专毕业学生查询档案方法
登陆http://www.xmpta.com.cn/ 找到档案查询的地址: http://61.134.97.222/xbdpq/cx/login.asp 输入姓名和身份证号即可。
-
ibm thinkpad 联想lenovo笔记本电脑如何关闭触摸板
如题,联想的笔记本关闭不了触摸板,给输入带来干扰,太烦人了。研究了一下原因,原来是没有安装相应驱动导致,过程记录下来,希望对大家有帮助。 第一步:到官网找驱动: 第二步:输入主机编号,或者点击下面的更多,找到你的型号: 第三步:选择操作系统版本和type前4位(在你的电脑背面找) 第四步:找到鼠标那一栏的驱动,一个是驱动程序,一个是辅助程序,也不知道是哪个,把两个都下载安装。安装过程忽略。。。 第五步:上一步安装完成后最好重启一下电脑,然后进入控制面板,找到鼠标,点开弹出属性窗口,你会发现多出了一个“UltraNav”标签,把“启用TouchPad” 勾掉就ok了。
-
ubuntu 内核升级到Linux 4.4.0-121-generic x86_64 后安装docker到18.03.0-ce
安装基本按照官方文档: https://docs.docker.com/install/linux/docker-ce/ubuntu/ 但是如果有些问题不顺利可能会重装,删除旧的docker 要注意的地方: rm -rf /var/lib/docker/ 如果改过bridge的名字,注意这个地方/etc/docker/daemon.json: { “bridge”: “docker0” } 如果docker 起不来,检查 /etc/systemd/system/docker.service.d 下的脚本,可以删除。 apt install docker-ce 的时候有可能会遇到 libseccomp2 版本的问题 下载要求的版本进行安装即可 dpkg -i libseccomp2_2.3.1-2.1ubuntu2_16.04.1_amd64.deb 最终实现: # uname -msr Linux 4.4.0-121-generic x86_64 # docker version Client: Version: 18.03.0-ce API version: 1.37 Go version: go1.9.4 Git commit: 0520e24 Built: Wed…
-
ubuntu 内核升级与降级
升级linux内核,普遍使用系统提供的功能 sudo apt-get dist-upgrade 降级就比较麻烦了,需要我们自己手动安装。 下面老蔡以Ubuntu 14.04为例,从内核版本linux-headers-3.13.0-44降级到linux-headers-3.13.0-24为例,来演示下怎么降级linux内核。 sudo aptitude install -y linux-image-3.13.0-24-generic \ linux-headers-3.13.0-24 grep submenu /boot/grub/grub.cfg 看到父选项 Advanced options for Ubuntu grep menuentry /boot/grub/grub.cfg 看到子选项 Ubuntu, with Linux 3.13.0-24-generic 其他版本也可以从执行结果中选取相应的。 然后修改/etc/default/grub文件 sudo vim /etc/default/grub 将其中 GRUB_DEFAULT=0 改为 GRUB_DEFAULT=”Advanced options for Ubuntu>Ubuntu, with Linux 3.13.0-24-generic” #GRUB_DEFAULT=”Advanced options for Ubuntu>Ubuntu, with Linux 4.4.0-117-generic” #GRUB_DEFAULT=0 然后执行…
-
蚂蚁金服开放平台企业支付宝SFTP服务调用方式升级提醒
近期,我们发现部分合作商户采用了“绑定IP”的方式来调用我方的sftp服务(规范的方式应该是通过域名 sftp.alipay.com来访问)。为确保相关商户的服务稳定性,请各商户内部自查,原110.75.149.86和 110.75.144.86将只提供服务至2018年1月31日,请将采用了“绑定IP”方式的商户优化为“捆绑域名”的方式。 “绑定IP”的定义及优化方案: 1、程序代码中直接写了IP,而非域名。 解决方法:程序代码中改成域名sftp.alipay.com(当然需要确保贵方网络环境内部能解析这个域名)。 2、系统hosts文件或网络环境中将域名sftp.alipay.com绑了IP。 解决方法:建议删除系统hosts文件或网络中的此配置。若合作方相关安全规则或者技术手段上只能如此,则请将 sftp.alipay.com域名绑成IP:45.113.40.175 和 110.75.228.31。 3、防火墙上仅开放了110.75.149.86或者110.75.144.86的白名单。 解决方法:建议不要做此白名单的限制。若合作方相关安全规则或者技术手段上只能如此,则请将白名单改成当前 sftp.alipay.com域名解析的IP,即:45.113.40.175 和 110.75.228.31。 蚂蚁金服开放平台 2018/01/26
-
dns常见解析类型
A: 地址记录,将域名指向一个IPv4地址。(如:8.8.8.8) AW: 带权重的A记录,DNS云服务私有记录类型,当需要配置A记录的负载权重功能时,使用该类型记录。 AAAA: 地址记录,将域名指向一个IPv6地址。(如:2401:8d00:4::1) AAAAW: 带权重的AAAA记录,DNS云服务私有记录类型,当需要配置AAAA记录的负载权重功能时,使用该类型记录。 CNAME: 别名记录,将域名指向另外一个域名,再由另外一个域名解析到IP地址。 CNAMEW: 带权重的CNAME记录,DNS云服务私有记录类型,当需要配置CNAME记录的负载权重功能时,使用该类型记录。 XW: 带权重的A或CNAME记录,DNS云服务私有记录类型,当需要配置A和CNAME记录同时存在负载权重功能时,使用该类型记录。 LNAME: 和CNAMEW类似,为最低优先级别名记录 DNAME: 和CNAME类似,将域名指向另外一整个域,而不是一个域名。 CAA: 证书颁发机构授权记录,允许域名的所有者指定哪所证书颁发机构(CA)为其网站颁发证书 TXT/SPF: 纯文本格式的记录,可以填写任意字符,长度限制255字节。通常用做反垃圾邮件验证。 MX: 邮件交换记录,如果要配置本域名下的邮件服务,需要添加MX记录。 NS: 域名服务器记录,要把某个子域名授权给其他解析平台去解析,需要添加NS记录。 SRV: 服务记录,通常用于Microsoft的活动目录以及office 365等服务 TRANS: 带权重的IPv4(CNAME)/IPv6记录,云服务私有记录类型,可以按照查询源地址自适应地返回对应记录(IPv4地址查询返回IPv4/CNAME记录,IPv6地址查询返回IPv6记录)。
-
systemctl 命令详解
systemd 是 Linux 下的一款系统和服务管理器,兼容 SysV 和 LSB 的启动脚本。systemd 的特性有:支持并行化任务;同时采用 socket 式与 D-Bus 总线式激活服务;按需启动守护进程(daemon);利用 Linux 的 cgroups 监视进程;支持快照和系统恢复;维护挂载点和自动挂载点;各服务间基于依赖关系进行精密控制。 任务 旧指令 新指令 使某服务自动启动 chkconfig –level 3 httpd on systemctl enable httpd.service 使某服务不自动启动 chkconfig –level 3 httpd off systemctl disable httpd.service 检查服务状态 service httpd status systemctl status httpd.service (服务详细信息) systemctl is-enabled httpd.service (仅显示是否 Active) 显示所有已启动的服务 chkconfig –list systemctl list…
-
docker proxy TLS handshake timeout.
docker 设置代理后下载镜像的时候会报错: TLS handshake timeout. 解决办法: /etc/systemd/system/docker.service.d# cat http-proxy.conf [Service] Environment=”HTTP_PROXY=http://192.168.50.165:6500/” “NO_PROXY=localhost,127.0.0.1,hostname” Environment=”HTTPS_PROXY=http://192.168.50.165:6500/” 注意加的 “NO_PROXY=localhost,127.0.0.1,hostname” 起作用。 重启system的服务: systemctl daemon-reload 验证下配置是否正常加载:systemctl show –property=Environment docker 重启docker:systemctl restart docker
-
利用squidman在mac上搭建代理服务作为ubuntu的apt源
软件地址:http://squidman.net/squidman/ 打开后修改端口号,点击开始即可。 场景:如果有服务器不能上网的话,可以连过来,比如ubuntu 的apt 源。 新建文件: /etc/apt/apt.conf 内容: Acquire::http::Proxy “http://192.100.50.15:61500”;
-
北京通管局网站备案规则
企业用户: 1. 企业须使用营业执照办理备案。 2. 负责人填写的手机号归属地应为北京地区。 仅接受常见的域名后缀备案,如.com/.net等;不能备案域名如:.hk/.tw/.aisa/.jp/.co/.io/.info/.xyz/.me/.win等和国别域名;境外域名注册商注册的域名必须转入到国内域名注册商后才可在北京申请备案。 4. 网站成功办理备案前不得开通访问。 5. 香港公民作为负责人办理备案必须使用护照作为个人身份证件,不得使用回乡证或香港居民身份证。 6. 域名持有者须与主办单位一致。 7. 企业要求上传最新营业执照副本彩色扫描件,以工商系统中查询到的最新证件为准。如果已更新为社会统一代码证件的均不接受原证件的申请。 8. 主办单位通信地址:请勿用符号表示。如1-2-3,请用文字叙述方式填写。如:1单元2层3号。 9. 备案的域名需实名认证且在有效期内。 10. 域名所有者与备案信息一致性规则:域名所有者认证信息要与备案单位或主体负责人信息一致。(对比信息:单位名称、证件类型、证件号码) 个人用户: 1. 负责人填写的手机号归属地应为北京地区。 2. 仅接受常见的域名后缀备案,如.com/.net等;不能备案域名如:hk/.tw/.aisa/.jp/.co/.io/.info/.xyz/.me/.win等和国别域名;境外域名注册商注册的域名必须转入到国内域名注册商后才可在北京申请备案。 3. 网站成功办理备案前不得开通访问。 4. 香港公民办理备案必须使用护照作为个人身份证件,不得使用回乡证或香港居民身份证。 5. 域名持有者须与主办人一致。 6. 主办单位通信地址:请勿用符号表示。如1-2-3,请用文字叙述方式填写。如:1单元2层3号。 7. 备案的域名需实名认证且在有效期内。 8. 域名所有者与备案信息一致性规则:域名所有者认证信息要与备案主办人信息一致。(对比信息:姓名、证件类型、证件号码)
-
【高危漏洞预警】Ubuntu 16.04 内核本地提权漏洞
受影响范围: Ubuntu 16.04 4.14 – 4.4 系列内核 阿里云解决方案: 1.缓解止血方案: 建议用户在评估风险后,通过修改内核参数缓解漏洞影响。 运行命令:#echo 1 > /proc/sys/kernel/unprivileged_bpf_disabled 完成缓解方案后,建议根据自身业务情况,再执行彻底解决方案。 2.彻底解决方案: 添加 xenial-proposed 源,可以按如下操作: 经典网络环境下添加源: # echo “deb http://mirrors.aliyuncs.com/ubuntu/ xenial-proposed main restricted universe multiverse” >> /etc/apt/sources.list VPC网络环境下添加源:…
-
CentOS/RHEL 6/7 升级PHP版本 version 5.4 到 5.6
For CentOS/RHEL 7: # rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm # rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm For CentOS/RHEL 6: # rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm For CentOS/RHEL 5: # rpm -Uvh http://mirror.webtatic.com/yum/el5/latest.rpm After installing Webtatic yum repository, you have to remove the old version of php-common package. It will also delete it dependencies packages. # yum remove php-common yum install -y php56w…
-
有用的firewall-cmd命令备忘
remove public zone service: firewall-cmd –zone=public –remove-service=ssh –permanent firewall-cmd –reload add ip range to trusted zone and add ssh service to trusted zone firewall-cmd –permanent –zone=”trusted” –add-source=”123.51.11.2/32″ firewall-cmd –permanent –zone=”trusted” –add-service=”ssh” firewall-cmd –zone=public –add-port=7788/tcp –permanent firewall-cmd –reload firewall-cmd –list-all-zones add anthor ip range to trusted zone firewall-cmd –permanent –zone=”trusted” –add-source=”172.30.30.0/24″ firewall-cmd –reload firewall-cmd –list-all-zones 一、centos7版本对防火墙进行加强,不再使用原来的iptables,启用firewalld…
-
centos7下安装php的Imagick扩展
yum install php-pear php-devel yum install ImageMagick ImageMagick-devel yum install pcre-devel wget http://pecl.php.net/get/imagick-3.2.0RC1.tgz tar -xvf imagick-3.2.0RC1.tgz cd imagick-3.2.0RC1/ phpize ./configure make make test make install Remember to turn on the extension in the php configuration file. vim /etc/php.ini extension = imagick.so
-
得到服务器出口ip的n个方法
curl ifconfig.mecurl ip.bsd-unix.netcurl icanhazip.comcurl ipinfo.io/ipwget -qO- ipinfo.io/iplynx -source ipinfo.io/ipwget -O – -q icanhazip.comcurl -s http://whatismyip.akamai.com/curl -s https://4.ifcfg.me/nc 4.ifcfg.me 23 | grep IPv4 | cut -d’ ‘ -f4telnet 4.ifcfg.me 2>&1 | grep IPv4 | cut -d’ ‘ -f4echo close | ftp 4.ifcfg.me | awk ‘{print $4; exit}’ 下面是个测试各种方法的速度脚本,最后有排名:wget https://moneyslow.com/bin/externalip-benchmarkchmod a+x externalip-benchmark./externalip-benchmark 测试结果: 其他文章: 1、Windows 浏览器常用方式访问 1、http://www.ip138.com/ 2、http://tool.chinaz.com/ 3、在百度搜索框内输入 ip…
-
centos7 开机自启动程序设置
修改开机脚本添加文件的权限 chmod +x /etc/rc.d/rc.local vi 这个rc.local 可以添加要开机自启动的脚本: systemctl start xxx.service 通过以上操作,就可以像CentOS6一样添加开机脚本了
-
全站https技术要点及注意事项
HSTS(HTTP Strict Transport Security) 通过Web服务器上的设置,在收到HTTP访问请求时,返回的header里带有Strict-Transport-Security字段,告知浏览器必须使用HTTPs进行访问。 但是,HSTS并不能避免首次跳转时遇到的劫持。要彻底解决这个问题,可以申请加入Preload List(预加载列表)。 Preload List是由Google Chrome维护的“HTTPs站点列表”,Chrome, Firefox, Safari, Edge, IE 11均在使用。一旦浏览器发现要访问的站点在Preload List上,默认就会发起HTTPs链接。这样,就避免了HSTS的首次跳转被劫持的隐患。 SSL卸载 采用F5来做负载均衡,F5应付单纯的L4和L7的流量是没有问题的,但进行SSL卸载时性能往往会急剧降低,F5可以提供专门的加速卡来解决这个问题,但价格不便宜。所以,还需要专门环节来进行SSL卸载,常见的Nginx和HAProxy都可以执行这个任务。 客户端证书 与浏览器不同的是,C#信任的根证书在localmachinestore或者currentuserstore中,Java信任的根证书在JDK安装目录下的cacerts目录中,iOS和Android的证书管理又有不同。 浏览器的证书在使用中又可以持续更新,用户往往感知不到,如果“想当然”认为浏览器验证通过就万事大吉,很可能会出问题。比如国内有不少网站使用WoSign签发的证书,但老版本的JDK并不信任WoSign的根证书,用浏览器浏览没问题的网站,程序就会报错,除非手动导入证书。Android的信任列表是随固件更新而更新的,4.2以后才内置WoSign的信任。因为WoSign行为不端,前几天Firefox, Chrome, Safari等主流浏览器又取消了对它的信任,也就意味着WoSign证书有安全风险,所以已经内置WoSign根证书的程序也应当做对应的设置。 服务器端证书 用浏览器验证没有问题的HTTPs站点,用程序访问就有问题。这是为什么? 在服务器上证书配置错误,只有最终证书,而缺少中级证书的情况。通常,最终证书里包含了中级证书相关的信息,所以如果缺少中级证书,浏览器为了建立证书链,会做一次耗时的操作来获取中级证书,而且这一切都发生在HTTPs连接真正建立之前。更糟糕的是,不少浏览器为了“表现更好”,会想办法绕过这个问题。所以缺少中级证书的情况一直存在,一直不会被发现,而程序调用的速度总是上不去,甚至有一定几率报错。 证书大小: 如果把证书链配置完全,还要注意证书链的大小。有一些网站的完整证书异乎寻常地大,达到若干kb甚至几十kb,也就是说,在建立连接之前,就必须先传输这么多的数据。如果做单纯的PC网页浏览,或许不会有问题。但对于移动端和程序调用来说,这就是一场灾难。最好的办法,是用OpenSSL配合WireShark之类的工具,自己动手来测试。如果你熟悉TCP相关的知识,往往可以得到更好的优化方案。 OCSP和CRL也不可忽略。这两项技术用来保证撤回证书(让证书失效)的有效性。如果你仔细观察,会发现证书里都指定了对应的OCSP或者CRL的URL,用来检查证书是否失效。按道理说,在每次建立HTTPs连接时,都应当进行OCSP或CRL检查。返回结果通常在1k左右,如果请求非常频繁,这个因素也应当考虑。 SNI 大家都熟悉“虚拟主机”的概念,它可以让多个域名对应到同一个IP,让同一台服务器服务多个站点。在HTTP时代,可以在header中通过host来指定需要访问的域名,一切看起来都那么完美。 但是在HTTPs时代,却没有这样的好事,传统的HTTPs服务很难让多个域名对应到同一个IP。在进行到HTTP通讯之前,必须先建立验证证书建立连接。如果一个IP上绑定了多个域名,这个阶段服务器根本没法知道请求对应的是哪个域名,无疑会造成极大的不便。 为了解决这种问题,SNI(Server Name Identification)应运而生了。这种技术说起来复杂,大家可以把它简单理解为“建立SSL/TLS通讯时的host header”,这样就解决了一个IP只能配单张证书的问题。 然而SNI的诞生历史并不长,许多客户端的支持都存在奇怪的问题。比如JDK7支持SNI,但是JDK8的支持又有bug。而且这种支持往往需要调用原生的API才可以实现,Resteasy之类的类库并不支持。如果对SNI的支持有问题,即便配置正确也可能无法建立连接,因为服务端并不能识别此请求需要的证书。 CDN CDN已经是业界流行的技术了,对稍微大一点的网站来说,没有CDN几乎是不可想象的。HTTP时代的CDN方案相当成熟,HTTPs的情况则不是如此。 要使用HTTPs的CDN服务,就要决定是否将证书交给CDN提供商。基于中国目前的商业信誉水平,把证书交给CDN提供商的风险不可不考虑。恶意揣测,别有用心的人一旦拿到证书,可以很方便地通过DNS劫持发起中间人攻击,而完全不被感知到。 另外,HTTP时代大家都喜欢将资源分散到多个不同的域名,因为建立连接的成本很低,而同一个域名的并发连接数有限。在HTTPs环境下,每次建立连接的成本高了很多,频繁下载和验证证书对移动设备和移动网络影响很大(尤其是证书很大的情况)。如果域名非常分散,影响就更加显著。所以在HTTPs时代,把域名收缩集中反而是更好的办法。 内容及其它 因为HTTPs的内容中无法引用HTTP的资源,所以应当保证网页中资源文件的链接都是HTTPs的。遗留的许多系统很可能并不注意这些事情,资源都采用绝对地址的形式,这样改起来工作量很大。如果要修改,最好一步到位,直接改成“协议相对URL”。 绝对地址URL:http://www.a.com/b.css 协议相对URL://www.a.com/b.css 这样浏览器就可以根据当前的协议,自动生成资源的绝对地址,无论是HTTP还是HTTPs,都可以自由切换。 如果资源都是自有的,切换HTTPs就相对容易。如果存在外部,尤其是UGC的资源,切换到HTTPs就很麻烦。如果是超链接,通常采用专门的跳转服务,也就是下面这样: https://link.my.com/target=www.you.com 如果是图片这类资源,可以设定专门的程序将其抓取过来存放在自己的服务器上,再将地址替换掉即可。但是,这样做很可能要自己承担流量压力,同时还要承担恶意程序攻击的风险。 如果是视频、游戏等富文本、交互复杂的资源,如果源站没有提供HTTPs的服务,多半只能忍痛割爱,放弃内嵌展现的形式了。
-
-
openssl 证书查看
生成Self Signed证书 # 生成一个key,你的私钥,openssl会提示你输入一个密码,可以输入,也可以不输, # 输入的话,以后每次使用这个key的时候都要输入密码,安全起见,还是应该有一个密码保护 > openssl genrsa -des3 -out selfsign.key 4096 # 使用上面生成的key,生成一个certificate signing request (CSR) # 如果你的key有密码保护,openssl首先会询问你的密码,然后询问你一系列问题, # 其中Common Name(CN)是最重要的,它代表你的证书要代表的目标,如果你为网站申请的证书,就要添你的域名。 > openssl req -new -key selfsign.key -out selfsign.csr # 生成Self Signed证书 selfsign.crt就是我们生成的证书了 > openssl x509 -req -days 365 -in selfsign.csr -signkey selfsign.key -out selfsign.crt # 另外一个比较简单的方法就是用下面的命令,一次生成key和证书 > openssl req -x509 -nodes -days…
-
网站为什么要备案?
根据工信部《互联网信息服务管理办法》(国务院 292 号令),网站在未完成备案之前,不能指向大陆境内服务器开通访问。如果您的网站托管在中国大陆节点服务器,或者开通 CDN 服务,就必须申请 ICP(互联网内容提供商)备案。若网站服务器为非中国大陆节点,则不用申请备案。 ICP 包含两种类型: ICP 备案: 对于单纯的资讯性并且不涉及直销的网站,需要申请 ICP 备案。ICP 备案可通过网站托管服务器提供商或网络空间服务商(如电信、移动、联通等)进行申请。 经营性 ICP 许可证: 对于商品或服务的在线平台或第三方卖方,需获得商用许可证。要申请经营性 ICP 许可证,您必须先有一个有效的 ICP 备案号。经营性备案需用户自己到当地管理局相关部门进行办理,服务商可协助提供资质以及接入协议。具体办理要求需您登录当地经营性备案网站进行查看。 注意:根据 2016 年最新要求,网站在工信部备案成功后,需在网站开通之日起 30 日内提交 公安备案申请。 您可以在服务器提供商的备案系统提交 ICP 备案申请。
-
mac下快速新建一个空的文本文件
1、实用工具中找到‘脚本编辑器’,输入: tell application “Finder” to make new file at (the target of the front window)as alias 2、随便命名如NewText,保存为app,放置在application文件夹中,拖入桌面dock 这样在打开一个文件夹后,点击桌面我们新建的图标就可以新建文档了。
-
微信支付中意外情况发生的函数处理:幂等
什么是幂等(Idempotency)?简单来说,一个操作如果具有任意多次执行所产生的影响均与一次执行的影响相同,我们就称之为幂等。 这样说来,似乎很容易理解。但要知道,这样的定义,其实是一个语义范畴对行为结果的定义。如何用语法和规则去确保行为能达到这个结果,往往需要很谨慎的设计和实现。实际系统中,幂等是一个极为重要的概念。无论是在大型互联网应用还是企业级架构中,我们都见到 REST API 被越来越多的采用。而正确实现幂等,往往是 API 中最难的技术点之一。 先说为什么重要。举一个简单易懂的例子。 比如你要处理一次电商网站收款或者付款的交易。当你给微信支付发送这个付款请求后,一个顺利的场景,是没有任何错误发生,微信支付收到你的付款请求,处理所有转账,然后返回一个 HTTP 200 消息表示交易完成。 那如果发出请求后,有个请求超时,你再也没有收到关于这个请求是成功还是失败的的回执,又该如何呢? 这里就有很多种可能情况: 这个请求在到达微信支付端前就已经发生超时,微信支付从来没有收到这样的请求。 这个请求到达微信支付端,但是支付交易失败,这时发生超时,微信支付收到这样的请求,但没有处理成功。 这个请求到达微信支付端,并且支付交易成功,这时发生超时,微信支付收到这样的请求,处理成功,但是没有回执。 这个请求到达微信支付端,并且支付交易成功,并且发回回执,然而因为网络原因回执丢失,客户端超时,微信支付收到这样的请求,处理成功,发出回执,但是客户没有收到。 很直观的一个想法,也是现实中用户最常见的做法,是重新提交一次支付请求。但是这样就有一个潜在的问题:请求超时是上面的哪一种情况?会不会引发多次支付的可能性? 这就涉及到系统中的幂等是如何实现的了。 那么幂等又该如何实现呢?“多次执行所产生的影响均与一次执行的影响相同”,简而言之,我们需要一个 Dedup(去重)的机制。这往往有很多不同的实现方法,但是有两个很关键的因素: 一是Idempotency Key(幂等令牌)。也就是客户端和服务器端通过什么来识别这实际上是同一个请求,或是同一个请求的多次 retry(尝试)。这往往需要双方又一个既定的协议。往往是类似账单号或者交易 token(令牌)这样一个可以唯一标识同一个请求意愿的元素。通常由客户端生成。 二是Uniqueness Guarantee(确保唯一性)。服务器端用什么机制去确保同一个请求一定不会被处理两次,也就是微信支付怎么确保同一笔交易不会因为客户端发送两次请求就被处理多次。最通常的做法是利用数据库。比如把幂等令牌所在的数据库表的 Column(列)作为 unique indexed。这样,当你试图存储两个含有同样令牌的请求时,必定有一个会报错。注意,简单的读检查并不一定行,因为读与读之间会有 Race Condition(竞争条件),因此还是有可能出错。 如果一个系统可以正确的处理和实现上面的两个要素,那么基本就能达到幂等的需求。那么现实系统中常见的问题都出在哪里呢? 一是幂等令牌什么时候产生,怎么产生?这一点很重要。拿上面的例子来说。就算微信支付可以保证每一个请求对应的支付交易一定只会被处理一次。但是这个请求的多次重复,一定要共有某一个微信可以识别的标识。假如客户端对同一笔交易的多次请求,产生的幂等令牌并不相同,那不论你别的地方多么完美,都没有可能保证 “一个操作如果具有任意多次执行所产生的影响均与一次执行的影响相同”。 二是有没有令牌被误删的可能。这是上面的问题的一个特殊情况。幂等令牌是由客户端生成的。那么如果生成的令牌在被使用后(一次微信支付请求中使用了),不小心因为 DB rollback 等原因被删除了。那么客户端就不知道自己其实已经发过一次请求。就有可能生成一个新的账单,并产生全新的令牌,而服务端将对此一无所知。 三是各种竞争条件。上面说的用 DB 读来确保唯一性经常因为竞争而不工作。其实一个需要幂等的系统中,保证唯一性的各个环节和实现,都要考虑 Race Condition。 四是对请求 Retry 的处理。这大部分是服务器端要做的。一个常见的方法是区分正在处理的请求、和处理成功、处理失败的请求。这样当客户端重试的时候,根据情况或者直接返回,或者再次处理。就好像前面说的微信支付的例子。微信支付服务上,需要知道每一笔交易的处理情况,才能正确处理在此转账请求时,是不是需要进行任何动作。 五是一个系统中需要多层幂等。什么意思呢?A 发送请求给 B,B 处理的一部分是要发送请求给另一个系统 C,C 在处理的过程中还可能需要发请求给另一个系统 D………
-
mac下如何强制退出应用程序
1、使用键盘快捷键强制退出处于活跃状态的Mac程序 快捷键:Command+Option+Shift+Esc 这样按住一两秒钟,就可以强制退出当前程序了,算是最方便的一种方法。 2、打开强制退出程序窗口 使用快捷键:Command+Option+Esc 来打开“强制退出应用程序”的窗口,然后选中你需要退出的程序,再点右下方的“强制退出”即可。 3、从Dock中强制退出程序 按住Option然后右键点击程序在Dock中的图标,可以看到“强制退出”的选项,选择即可。 4、从左上角苹果菜单中强制退出程序 这个有些类似第二条,从左上角的菜单中选择“强制退出”,不过有些时候程序当机,点击菜单会出现没反应的情况。 5、使用“活动监视器”强制退出程序 在 应用程序-实用工具 中找到“活动监视器”,找到程序的名字然后选择左上方红色按钮强制退出程序,这个就有些类似Windows中的任务管理器了。如果上面的方法都不奏效,那么可以尝试这个方法。 6、使用终端命令强制退出程序 这个应该算是重启电脑之前的最后办法了,在终端中输入如下命令 killall [程序名称]
-
狗日的markmonitor是干什么的
也许你查询某个大型公司域名whios信息时,常常会发现很多这些大型公司的域名都在一家名为MarkMonitor的公司注册,那么markmonitor是家什么样的公司呢?
-
发票真伪查询方法
2017年7月1日国家“史上最严发票规定”正式实施,近段时间国家税务局又相继发布有关发票管理新规,公司《财务制度》中一直有明确规定:报销人对所报销费用的真实性、准确性、合法性负责,单据及附件应合规。以下提供发票真伪的查询方法: 一、增值税发票(包括专用发票、增值税普通发票、增值税电子普通发票、机动车销售统一发票)查询方法(国家税务总局负责) 登录国家税务总局全国增值税发票查验平台进行查询:https://inv-veri.chinatax.gov.cn/ 二、非增值税的普通发票查询方法 1、北京市国税发票真伪查询方法: 登录北京市国家税务局网站查询:http://www.bjsat.gov.cn/ptfp/fpindex.jsp 报销出租车票时,除查询北京国税网址结果外,还需要登录:“微信-钱包-城市服务-出租车”查询或者进入“支付宝-城市服务-出租车信息查询”输入出租车号牌或驾驶员证号,若两次查询结果一致,则发票为真,若两次查询结果不一致,发票为假。 2、上海国税发票真伪查询方法: 登录上海市国家税务局网站查询:https://www.tax.sh.gov.cn/xbwz/wzcx/WSBSptFpCx_loginsNewl.jsp 3、广东省国税发票真伪查询方法: 登录广东省国家税务局网站查询:http://gs.etax-gd.gov.cn/xxmh/html/index.html?forw=gzcx-fpcy 4、其他省(市)国税发票真伪查询方法: 登录各省市国家税务局网站―网上办税服务厅―我要查询―发票查询 三、其他发票查询网址方法: 除上述查询网址外,还可通过友商网进行查询:http://fapiao.youshang.com/
-
微信登录 wechat-login.html 403 Forbidden
discuz设置微信登陆,遇到403问题。 一般情况下,全局-seo设置里要先确定现有的seo策略生效,点击 你的域名/admin.php?action=checktools&operation=rewrite&frame=no 会有相应的rewrite规则,将其和你自己的配置进行比对,将插件的rewrite规则靠前即可。
-
请先升级 UCenter 到 1.6.0 以上版本。 如果使用为Discuz! X自带UCenter,请先下载 UCenter 1.6.0, 在 utilities 目录下找到对应的升级程序,复制或上
错误提示”请先升级 UCenter 到 1.6.0 以上版本。 如果使用为Discuz! X自带UCenter,请先下载 UCenter 1.6.0, 在 utilities 目录下找到对应的升级程序,复制或上。。。。。“ 解决办法: 先确认uc版本是否1.6,如果是还出现请先升级 UCenter 到 1.6.0 以上版本,按如下方法解决: 方法有两种: 第一、http://你的域名/install/update.php?step=prepare 直接输入 第二、在updata.php文件中 查找代码 if(version_compare($version, ’1.5.2′) <= 0) { 将代码修改为:if(version_compare($version, ’1.5.2′) >= 0) { 就可以跳过检查了!! 接下来哗哗哗一顿表升级乱闪,大概260个表后,显示如下: 数据库升级工具 升级开始 数据库结构添加与更新 数据更新 数据库结构删除 升级完成 恭喜,数据库结构升级完成! 升级完成。
-
Visual Studio Code 快捷键 Mac 版
Mac 键盘符号说明 ⌘ == Command ⇧ == Shift ⇪ == Caps Lock ⌥ == Option ⌃ == Control ↩ == Return/Enter ⌫ == Delete ⌦ == 向前删除键(Fn+Delete) ↑ == 上箭头 ↓ == 下箭头 ← == 左箭头 → == 右箭头 ⇞ == Page Up(Fn+↑) ⇟ == Page Down(Fn+↓) Home == Fn + ← End == Fn + → ⇥ == 右制表符(Tab键) ⇤ == 左制表符(Shift+Tab) ⎋ == Escape (Esc) ⏏ == 电源开关键 常用 Mac 快捷键 介绍 ⇧⌘P, F1 显示命令面板 ⌘P 快速打开 ⇧⌘N 新建 窗口/实例 ⌘W 关闭 窗口/实例 基本编辑 Mac 快捷键 介绍 ⌘X 剪切 ⌘C 复制 ⌥↓ /…
-
-
Sphinx全文检索引擎使用指南:安装支持的操作系统:在绝大多数现代的Unix类操作系统上,只需要一个C++编译器就可以编译并运行Sphinx,而不需要对源码进行任何改动。
Sphinx可以在以下系统上运行: Linux 2.4.x, 2.6.x (包括各种发行版) ? Windows 2000, XP ? FreeBSD 4.x, 5.x, 6.x ? NetBSD 1.6, 3.0 ? Solaris 9, 11 ? Mac OS X 支持的CPU种类包括 X86, X86-64, SPARC64。 依赖的工具:在UNIX平台上,你需要以下的工具用来编译和安装Sphinx: C++编译器。GNU gcc就能够干这个活。 make程序。GNU make就能够干这个活。 安装Sphinx: tar包解压,并进入sphinx子目录: $ tar xzvf sphinx-0.9.7.tar.gz $ cd sphinx configuration程序: $ ./configure configure程序有很多运行选项。完整的列表可以通过使用 –help开关得到。最重要的如下: –prefix, 定义将 Sphinx安装到何处; –with-mysql, 当自动检测失败时,指出在那里能找到MySQL头文件和库文件; 制作二进制程序: …
-
centos6 安装 sphinx
安装前请先确定安装了常用的组件,然后在官方网站下载最新的Sphinx, yum install -y python python-develhttp://sphinxsearch.com/downloads/release/ 安装sphinxtar zxvf sphinx-2.1.4-release.tar.gz cd sphinx-2.1.4-release ./configure –prefix=/usr/local/sphinx –-with-mysql make && make install libsphinxclient 安装(PHP模块需要) cd api/libsphinxclient ./configure –prefix=/usr/local/sphinx make && make install 安装PHP的Sphinx模块 下载地址:http://pecl.php.net/package/sphinx wget http://pecl.php.net/get/sphinx-1.3.0.tgz tar zxf sphinx-1.3.0.tgz cd sphinx-1.3.0 /usr/local/PHP/bin/phpize ./configure –with-php-config=/usr/local/php/bin/php-config –with-sphinx=/usr/local/sphinx/ make && make install 安装好后,在安装目录下etc目录下,有份测试数据和配置的样本 cd /usr/local/sphinx/etc cp sphinx.conf.dist sphinx.conf
-
discuz 静态化rewrite规则大全 apache windows iis nginx zeus
Apache Web Server(独立主机用户) <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{QUERY_STRING} ^(.*)$ RewriteRule ^(.*)/topic-(.+)\.html$ $1/portal.php?mod=topic&topic=$2&%1 RewriteCond %{QUERY_STRING} ^(.*)$ RewriteRule ^(.*)/article-([0-9]+)-([0-9]+)\.html$ $1/portal.php?mod=view&aid=$2&page=$3&%1 RewriteCond %{QUERY_STRING} ^(.*)$ RewriteRule ^(.*)/forum-(\w+)-([0-9]+)\.html$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3&%1 RewriteCond %{QUERY_STRING} ^(.*)$ RewriteRule ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ $1/forum.php?mod=viewthread&tid=$2&extra=page\%3D$4&page=$3&%1 RewriteCond %{QUERY_STRING} ^(.*)$ RewriteRule ^(.*)/group-([0-9]+)-([0-9]+)\.html$ $1/forum.php?mod=group&fid=$2&page=$3&%1 RewriteCond %{QUERY_STRING} ^(.*)$ RewriteRule ^(.*)/space-(username|uid)-(.+)\.html$ $1/home.php?mod=space&$2=$3&%1 RewriteCond %{QUERY_STRING} ^(.*)$ RewriteRule ^(.*)/blog-([0-9]+)-([0-9]+)\.html$ $1/home.php?mod=space&uid=$2&do=blog&id=$3&%1 RewriteCond %{QUERY_STRING} ^(.*)$ RewriteRule ^(.*)/(fid|tid)-([0-9]+)\.html$ $1/archiver/index.php?action=$2&value=$3&%1…
-
-
mac sublime text3 常用快捷键总结(转自简书)
cmd+n 新建页面 cmd+数字键 切换到对应页面 cmd+p 搜索跳转到对应页 cmd+w 关闭页面 cmd+j 合并一行 cmd+d 选中当前单词,继续敲可以选中多个 cmd+l 选中当前行 cmd+z 撤销 cmd+c 复制 cmd+v 粘贴 cmd+s 保存 cmd+x 删除当前行 cmd+delete 删除光标定位到当前行起始的一块 cmd+]缩进当前行,[回缩当前行,对应tab/shift+tab功能 cmd+enter 向下开辟一行 cmd+shift+enter 向上开辟一行 cmd+f 查询内容 cmd+shift+f 全局查询,可替换 cmd+g 查询到的内容下一个 cmd+鼠标右键 多点编辑 cmd+~ 调出控制台 cmd+k then u 大写 cmd+k then l 小写 cmd+shift+p 调出命令面板 cmd+⬅️ 光标定位到当前行最前 +shift 选中…
-
建立网站涉及的前置审批行业及需要的证件和资质(论坛不需要审批了)
涉及前置审批的行业及批复单位: 分类 批复单位 前置审批名称 备注 新闻类 国务院新闻办公室或者省、自治区、直辖市人民政府新闻办公室 《互联网新闻信息服务许可证》 出版类 国家新闻出版广电总局 《互联网出版许可证》 药品和医疗器械类 各省食品药品监督管理局;工信部(开办农药、化工生产企业审批) 《药品经营许可证》、《医疗器械经营企业许可证》)、《互联网药品信息服务资格证书》、化学类药品由工信部颁发 文化类 省文化厅 《网络文化经营许可证》 广播电影电视节目类 广电总局 《信息网络传播视听节目许可证》 教育类 各省教育厅 除浙江、青海、西藏外,其余省份已取消。 医疗保健类 各省卫生厅 除河北、西藏外,其余省份已取消。 网络预约车 公司注册所在地的交通管理委员会 《网络预约出租汽车经营许可证》 电子公告类 省通信管理局 全国范围内取消。 新闻类 互联网新闻信息服务是指通过互联网登载新闻信息(时政类新闻信息包括有关政治、经济、军事、外交等社会公共事务的报道、评论,以及有关社会突发事件的报道、评论)、提供时政类电子公告服务和向公众发送时政类通讯信息。 第一类:新闻单位设立的登载超出本单位已刊登的播发的新闻信息,提供时政类电子公告服务 ,向公众发送时政类通讯信息的互联网新闻信息服务单位; 第二类:非新闻单位设立的转载新闻信息,提供时政类电子公告服务 、向公众发送时政类通讯信息的互联网新闻信息服务单位; 第三类:新闻单位设立的登载本单位已刊登播发的新闻信息的互联网新闻信息服务单位; 出版类 互联网出版,是指服务提供者将自己创作或他人创作的作品经过选择和编辑加工,登载在互联网上或者通过互联发送到用户端,供公众浏览、阅读、使用或者下载的在线传播行为。其作品主要包括:正式出版的图书 、报纸、期刊、音像制品、电子出版物等出版物内容或者在其他媒体上公开发表的作品,经过编辑加工的文学、艺术和自然科学、社会科学、工程技术等方面的作品。 凡是在互联网和移动网上上线运营电子阅读,电子出版物,音像制品,互联网图书,互联网报纸,互联网杂志,手机出版物,学术出版物,艺术出版物,教育出版物,游戏,地图等,都需要到相关单位申请互联网出版许可证。 药品和医疗器械类 根据《互联网药品信息服务管理办法》互联网药品信息服务,是指通过互联网向上网用户提供药品(含医疗器械)信息的服务活动。 文化类 根据《互联网文化管理暂行规定》互联网文化产品是指通过互联网生产、传播和流通的文化产品。如游戏、音乐、动漫等。 广播电影电视节目类 利用摄影机、录音机和其它视音频摄制设备拍摄、录制的,由可连续运动的图像或可连续收听的声音组成的视音频节目 ,如视频类,直播类网站。 教育类 教育类前置审批指与教育有关的教育网站和网校,如办理文凭、远程教育视频、考试培训等。 医疗保健类 互联网医疗保健信息服务是指通过开办医疗卫生机构网站、预防保健知识网站或者在综合网站设立预防保健类频道向上网用户提供医疗保健信息的服务活动。 2015…
-
discuz nginx 的静态化配置
rewrite ^([^\.]*)/topic-(.+)\.html$ $1/portal.php?mod=topic&topic=$2 last; rewrite ^([^\.]*)/article-([0-9]+)-([0-9]+)\.html$ $1/portal.php?mod=view&aid=$2&page=$3 last; rewrite ^([^\.]*)/forum-(\w+)-([0-9]+)\.html$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3 last; rewrite ^([^\.]*)/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ $1/forum.php?mod=viewthread&tid=$2&extra=page%3D$4&page=$3 last; rewrite ^([^\.]*)/group-([0-9]+)-([0-9]+)\.html$ $1/forum.php?mod=group&fid=$2&page=$3 last; rewrite ^([^\.]*)/space-(username|uid)-(.+)\.html$ $1/home.php?mod=space&$2=$3 last; rewrite ^([^\.]*)/blog-([0-9]+)-([0-9]+)\.html$ $1/home.php?mod=space&uid=$2&do=blog&id=$3 last; rewrite ^([^\.]*)/(fid|tid)-([0-9]+)\.html$ $1/index.php?action=$2&value=$3 last; rewrite ^([^\.]*)/([a-z]+[a-z0-9_]*)-([a-z0-9_\-]+)\.html$ $1/plugin.php?id=$2:$3 last; if (!-e $request_filename) { return 404; }
-
F5负载均衡设备选型依据性能指标
假设你是一个用户,需要为自己公司的系统部署一套负载均衡设备,那么应该根据哪些因素来考虑要选择的负载均衡设备的性能指标是否能够满足自己的需要呢?许多用户往往根据自己的网络和应用情况的统计或者再加上未来发展的规划,简单地选择刚好与自己的计算结果相符性能的负载均衡设备型号,结果是许多用户发现所购买的设备并不能完全满足自己的需求,这说明在选型的过程中疏漏了某些因素。我们来详细分析一下。 负载均衡设备选型要考虑性能、功能项开启情况以及满足真实和未来需求三个方面。 1. 性能 性能指标包含4/7层吞吐量,4/7层新建连接数,并发连接数三大指标。同时包含SSL加速能力,HTTP压缩能力,内存Cache等功能模块指标。 1) 4/7层吞吐量(单位bps) 如果系统应用配置都是4层的(负载均衡设备只判断TCP包头进行转发),那么考虑4层吞吐量即可。如果涉及到应用层数据包头或者数据包内容的判断和分析,那么必须考虑7层的吞吐量能力。吞吐量的计算通过统计单位时间内网络中的流量(出向流量+入向流量)即可得出,一般来说要把峰值流量作为吞吐量选择的最低依据(如果可以容忍峰值丢包,那么可以以平均每秒的流量作为参考),例如经过统计峰值流量为10Gbps,那么必须考虑10Gbps吞吐量以上的设备。 2) 4/7层新建连接数(单位CPS) 新建连接数也分为4层新建连接数和7层新建连接数/请求数两大指标,判断该用哪个指标跟吞吐量一样,都是判断负载均衡设备对经过的流量是4层的处理还是7层的处理。新建连接数衡量的是负载均衡设备每秒能处理多少个4层或者7层的用户新建连接,例如一个用户每秒会发起10个新建连接,网络中有1万个并发用户,那么负载均衡设备的4层新建连接能力不能小于10万CPS,如果负载均衡设备是做7层处理的,那么必须要求7层新建连接数也不能小于10万CPS。 3) 并发连接数 并发连接数衡量的是负载均衡设备能够同时处理多少个用户会话,如果有设备号称新建连接数很高,但并发连接数较低,则该设备将很快达到瓶颈,新的用户连接将处于排队或者丢弃的状态,这显然是不合理的,所以一个性能强的负载均衡设备,必然是新建连接和并发连接数指标都会很高,而不会只有一个高。并发连接数可以通过统计服务器上的连接数来计算,例如经过统计,共有100台服务器,每台服务器并发连接数峰值为5000个,那么要求设备至少支持50万并发连接能力。 4) 功能模块性能指标 a) SSL加速 经验表明,服务器自己开启SSL加解密后的性能会降为开启前的十分之一,所以需要安全访问的系统往往会把SSL的加解密通过负载均衡设备的SSL加速功能来完成。 SSL加速性能指标有SSL新建连接数(CPS),新建交易数(TPS),SSL Bulk(对称加解密)吞吐量等,这些指标的估算跟7层新建连接数和吞吐量的估算一样,判断需要SSL加解密的流量和连接数有多少即可。 b) HTTP压缩 负载均衡设备的HTTP压缩功能会把服务器的应答包压缩后发送给客户端,然后客户端浏览器会自动解压缩,HTTP压缩降低了数据包大小,自然也就提高了用户的访问速度,是否开启这个功能要对负载均衡设备压缩的开销,压缩的效果以及网络传输速度做综合衡量,一般在配置中只会对部分确实需要的应用来开启,HTTP压缩的单位bps,例如需要压缩的流量为1Gbps,则选择至少1Gbps压缩性能的负载均衡设备。 c) 内存Cache 内容缓存可以降低服务器的负载并提高响应速度,抛开功能差异,缓存能力衡量的指标是用于缓存的内存大小。该功能各负载均衡厂家一般是免费赠送。 2. 功能项开启 负载均衡设备开启功能项的数量多少对于负载均衡设备的性能影响是不同的,开启的功能项越多,越复杂,设备的性能也会随之做更多的下降,所以在考虑负载均衡设备时,如果自己的系统会用到多个功能项,对于前面的性能指标要有一定的盈余考虑。 3. 满足真实和未来需求 以上所述的吞吐量,新建连接数,并发连接数以及各模块指标都是在相对单纯干净的环境测出的值,也就是说都是各负载均衡设备在最优环境下的最大值,但在真实环境,流量可能复杂很多,所以负载均衡设备在真实应用中一般不可能达到标称的性能(实际上对于所有做复杂处理的设备来说,都不可能达到标称值)。考虑到应用的复杂程度不同,功能模块开启的数目不同,在负载均衡性能指标的选型时,一定要留下充足的空间,原则如下: 1) 如果确认负载均衡设备对所有应用的处理都是最简单的4层处理,那么理论上选择的负载均衡设备的4层性能稍高于实际性能需求即可。 2) 如果确认负载均衡设备对所有应用的处理都是简单的7层处理,那么理论上选择的负载均衡设备的7层性能稍高于实际性能需求即可。 3) 如果负载均衡设备处理的应用既有4层的也有7层的,建议按照7层应用的性能来考虑负载均衡设备。 4) 如果确认自己的应用经过负载均衡处理时,需要复杂的4层或者7层处理,例如需要根据客户端的地址做策略性分发,需要根据tcp的内容做处理,需要根据HTTP头或者HTTP报文做处理,那么建议选择的负载均衡设备4/7层性能为真实性能需求的两倍。 5) 如果负载均衡设备有混合的复杂流量处理并且还开启了一些功能模块,那么建议选择的负载均衡设备4/7层性能为真实性能需求的3倍。 6) 考虑到设备需要轻载运行才能更加稳定,所以有可能的话在以上基础上再增加30%的性能。 7) 如果还要满足未来几年的发展需求,在以上基础上还要留出未来发展所需要增加的性能。 8) 不同负载均衡设备厂家由于不同的架构,使得某些设备在复杂环境下可能也表现的比较优秀,这个客户可以对比判断,但总体来说,以上建议适合于所有厂家的设备。