wangcunlu1

wangcunlu1 查看完整档案

填写现居城市  |  填写毕业院校  |  填写所在公司/组织填写个人主网站
编辑
_ | |__ _ _ __ _ | '_ \| | | |/ _` | | |_) | |_| | (_| | |_.__/ \__,_|\__, | |___/ 个人简介什么都没有

个人动态

wangcunlu1 提出了问题 · 2019-09-19

服务器性能,并发数,吞吐量,平均响应时间

我对服务器测试不了解,但是我很想弄明白是怎么测试的。

我对服务器并发的理解。
比如我用jmeter进行测试,如果我请求的页面没有调用数据就是静态页面,那么在nginx服务器中,这样的测试根本不能说明应用服务器的性能情况,所以一定要有数据调用(RUCD操作的页面)那么我要并发测试一个简单查询语句,这时候就产生一个以为,
假设我的应用服务器是超算计算机(天河一号),那么我用单个i3去做并发测试,怎么测试它的整个从0并发到应用服务器崩溃?

或者说我测试100并发看它的CPU负载多少,然后*几倍到满负载算出多少并发?

再者就是不一致性,有些SQL语句的时间0.01毫秒,但是有些而是0.1秒甚至数据量大到达1-2秒,我知道这是用户体验非常差,JVM有自动垃圾回收的机制,我想问下,我用100并发测试0.01毫秒的SQL语句,0.01毫秒CPU负载才20%,但是我用100并发测试1-2秒SQL语句CPU负载50%,其实是因为垃圾回收的机制吗把空闲的线程销毁了?

假设今天领导告诉我测试一下这个服务器的性能各项指标(并发数,吞吐量,平均响应时间)
我按照我自己的思绪说,大家觉得有什么不对的地方请大家指点一下。
那么我就用java springboot + mybatis 弄一个简单ORM表,然后部署到服务器,开始用jmeter进行测试,分别用100,200,300并发进行请求,然后占用服务器百分比多少,算出满负载的并发数,然后查看其他的jmeter的指标。是这样吗?

关注 1 回答 0

wangcunlu1 赞了回答 · 2019-09-10

解决关于项目新功能上线问题。

你想像一下高速的收费站,当前有ABCD共4根车道可用,车道分流到4根车道
如果我要对车道进行改造,应该怎么做?先改造AB车道,再改造CD车道
先把AB车道关闭,这时所有的车肯定都往CD车道走,等我把AB车道改造完成再打开AB车道,再对CD车道进行改造

这样说你应该能听明白了

关注 3 回答 2

wangcunlu1 提出了问题 · 2019-09-10

解决关于项目新功能上线问题。

纯来伸手问问题的,
在没有集群的情况下,是不是部署新的功能和覆盖原有的代码的时候是不是要停止服务,部署后重新启动服务?
还是说有什么工具能够自动化部署的工具呢?
就是比如springboot(后端) 和 nginx (前端) 有新功能发布,我要停止springboot和nginx把新代码复制进来,然后启动,这是我现在的理解。

那么在集群的环境下,我们该怎么部署,新的功能会不会导致部分缓存数据失效,而且对于数据库的表的修改。这些可以通过代码部署,但是这样下来是不是要完全停止服务器几分钟?

请问各位代码如何部署让用户没有丝毫感觉的到?

关注 3 回答 2

wangcunlu1 赞了回答 · 2019-09-06

解决上下班开发同步问题

1.阿里云和腾讯云都有学生服务器,1核1G,10元/月
2.代码可以部署在自己的服务器上,随时预览及同步代码。
3.git对内存要求比较高,一般在自己服务器装个svn来同步代码完全够用

关注 6 回答 6

wangcunlu1 赞了回答 · 2019-09-05

解决上下班开发同步问题

一 环境放在服务器

租个服务器,完全面向服务器开发。

本地只负责编写代码,然后 push 到 git ,git 的Web Hooks ,在收到请求后自动 pull 代码。

so ,这样无论是在家还是在公司,只要你能连接到服务器,把代码 push 到服务器即可。

当然,这样更佳适用于 php 这种解释性语言,不需要每次编译。

二 环境放在公司开发机器

当然,如果你觉得这样不够优雅,

那就是像其他答主说的那样,使用内网穿透,但是这样你还是得有一台部署在外网的服务器。

这就假设你的开发运行环境在你公司,然后以公司为基准,就重复上面黑体字部分的内容,只不过是把服务器的部分放到你公司的开发机。

这个方法不够好,万一公司断网或者其他的原因导致失联了,你就连不上了。

三 使用统一环境

使用 Docker

无论哪种方案,我都建议你使用内网穿透打开你电脑远程,无论是 ssh 还是 3389 ,这样避免你突然需要某个东西,但是那个东西刚好在另一个机器呢?

关注 6 回答 6

wangcunlu1 赞了回答 · 2019-09-05

解决上下班开发同步问题

综合你的问题来看,就是数据库连接问题,给你三种方案:
1、如果办公室有VPN的话,家里电脑VPN连到办公室局域网,这样就可以连接数据库
2、如果你有云服务器,数据库部署在云服务器上,这样在办公室或家里都可以远程连接
3、直接使用云RDS数据库,这样在办公室或家里都可以远程连接(推荐)

关注 6 回答 6

wangcunlu1 赞了回答 · 2019-09-05

解决上下班开发同步问题

猜测公司的开发环境数据库是局域网的,我觉得可以:

  1. 内网穿透,把数据库的ip暴露到某个域名下,可以看下ngrokfrp工具
  2. 通过vpn通道连接到公司内网,这个需要配套vpn服务,比较复杂
  3. 数据库同步

关注 6 回答 6

wangcunlu1 赞了回答 · 2019-09-05

解决上下班开发同步问题

不管是同步数据库还是远程连接,感觉都会涉及到信息安全的问题。

我自己自学时敲的代码是放到一个云IDE(Coding.net)上了,这样回家后也可以继续敲。

关注 6 回答 6

wangcunlu1 赞了回答 · 2019-09-05

解决上下班开发同步问题

回家开发有加班费吗?下班了不做点自己的项目,健健身,跑跑步啥的,倒是把时间都奉献给公司了,这么拼啊老哥。

关注 6 回答 6

wangcunlu1 提出了问题 · 2019-09-05

解决上下班开发同步问题

大家上班开发后想回家继续工作,那么怎么同步本地环境呢?代码方面问题不大,用github就行。但是数据库得结果和数据大家是怎么快速得同步过来得,还是说用远程自己连接到公司操作开发?
所以想请教一下怎么快速同步开发环境。

晚上9点刚到家。
总结一下
1.用GitHub或者coding同步代码,但是你今天晚上要回去写什么功能要把相应的数据库结构和数据同步导出去,
然后回家同步代码,接着把数据库导进去,每天都干这些事情,这个方式pass太麻烦。
2.有一台云服务器,根据项目来选择配置,服务器搭建你平常需要的测试环境比如数据库,缓存,队列等,代码也可以直接同步到服务器上,然后回家同步下来,不需要额外的导数据频繁无聊的操作,但是一个字钱,需要每个月或者一段时间的租用费用,初步估计每个月60左右,不要跟我扯aws免费一年,我用过,aws是好,但是我在深圳用断流太严重了,根本不行装BBR也不行,真的。所以就是每个月至少60月。
3.VPN或者公司开通外网IP,做端口映射,首先公司要有外网IP这是绝对的,无论是VPN还是外网IP,这个需要配合要拿到公司主路由器的账号密码或者告诉维护人员做相关映射,这个条件有点苛刻!
4.我自己想的,就是虚拟机装进U盘,比如用VM装个CentOS将硬盘选择放在U盘上,这样你在公司U盘插上去运行虚拟机,回家U盘插上虚拟机,CentOS里面你可以装你想装的各种服务,数据库,缓存,队列等,而且可以根据你自己的电脑配置调整虚拟机的配置,有优点也有缺点,优点,基本上是无缝同步,几乎不用任何操作,缺点,如果虚拟机不是正常关闭,直接拔U盘,会在本地残留进程,导致下次打不开或者打开错误。带宽取决于你的USB接口标准2.0大概1-6M左右3.0大概有10M以上,不知道离职的时候会不会被公司调监控告我偷取公司源代码。。。。。。。。(致命》

综合上面小公司的我还是选择U盘。。。。。即插即用就是好。

关注 6 回答 6

认证与成就

  • 获得 3 次点赞
  • 获得 14 枚徽章 获得 0 枚金徽章, 获得 1 枚银徽章, 获得 13 枚铜徽章

擅长技能
编辑

(゚∀゚ )
暂时没有

开源项目 & 著作
编辑

(゚∀゚ )
暂时没有

注册于 2017-02-06
个人主页被 444 人浏览