<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[rain_in_spring的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/rain_in_spring</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; rain_in_spring]]></copyright><item><title><![CDATA[十、项目：营销中心]]></title><link>https://blog.youkuaiyun.com/rain_in_spring/article/details/158920258</link><guid>https://blog.youkuaiyun.com/rain_in_spring/article/details/158920258</guid><author>rain_in_spring</author><pubDate>Wed, 11 Mar 2026 10:54:24 +0800</pubDate><description><![CDATA[公司内很多业务线都有抽奖和礼品兑换的需求，之前是每个业务线都有自己一套营销逻辑，为了减少各业务线的重复开发，因此单独抽取一个market服务，实现了营销的功能，对外提供了抽奖和兑换的dubbo接口，各业务线只需要做一些活动配置，即可完成营销活动的创建和使用。]]></description><category></category></item><item><title><![CDATA[九、Rocketmq简介]]></title><link>https://blog.youkuaiyun.com/rain_in_spring/article/details/158878581</link><guid>https://blog.youkuaiyun.com/rain_in_spring/article/details/158878581</guid><author>rain_in_spring</author><pubDate>Tue, 10 Mar 2026 09:48:17 +0800</pubDate><description><![CDATA[RocketMQ是一款分布式、队列模型的消息中间件，是阿里巴巴集团自主研发的专业消息中间件，借鉴参考了JMS规范的MQ实现，更参考了优秀的开源消息中间件KAFKA,实现了业务消峰、分布式事务的优秀框架。]]></description><category></category></item><item><title><![CDATA[八、centos修改静态网络的方法]]></title><link>https://blog.youkuaiyun.com/rain_in_spring/article/details/158809728</link><guid>https://blog.youkuaiyun.com/rain_in_spring/article/details/158809728</guid><author>rain_in_spring</author><pubDate>Sun, 08 Mar 2026 18:16:33 +0800</pubDate><description><![CDATA[4、保存文件，重启网卡：systemctl restart network。2、修改：BOOTPROTO=static。]]></description><category></category></item><item><title><![CDATA[七、二八定律在性能测试中的应用]]></title><link>https://blog.youkuaiyun.com/rain_in_spring/article/details/158688834</link><guid>https://blog.youkuaiyun.com/rain_in_spring/article/details/158688834</guid><author>rain_in_spring</author><pubDate>Thu, 05 Mar 2026 09:53:24 +0800</pubDate><description><![CDATA[网站的注册用户 1 000 w 日活跃用户大概是 1 00 w 左右，那么最极端情况下，这 1 00 w 人都会来签到（实际肯定不会这么多人来签到，但是评估指标要尽量往高评，以免出现极端情况），那么每天大概有 1 00 w 次签到请求， 8 0% 的 请求 数 就是 1 0 0 w*0.8=8 0 w。看了上面一大堆分析，有的朋友可能又说了，别整这些有的没的，我们公司的项目就是啥都没有，三无产品，没有业务监控、没有中间件日志，也没有日活数据 ，那怎么评估预期指标。一般来讲，我们将压测的项目分为两类，]]></description><category></category></item><item><title><![CDATA[六、性能案例分析]]></title><link>https://blog.youkuaiyun.com/rain_in_spring/article/details/157936321</link><guid>https://blog.youkuaiyun.com/rain_in_spring/article/details/157936321</guid><author>rain_in_spring</author><pubDate>Tue, 10 Feb 2026 11:24:22 +0800</pubDate><description><![CDATA[新创建的对象，继续放到eden区，当eden区再次满的时候，jvm会扫描eden区和s0区，把有用的数据标记出来，复制到s1区，把eden区和s0区清空，则：“o”是对象的引用，保存了new Object() 对象在内存中的地址，而“o”是保存在。开发人员编写一行代码：Object o = new Object();线程私有：每次新建一个线程的时候，都会创建一个该线程私有的栈内存。此时的结果是：eden区（空），s0区（有数据），s1区（空）Object对象保存在。]]></description><category></category></item><item><title><![CDATA[五、服务端性能监控]]></title><link>https://blog.youkuaiyun.com/rain_in_spring/article/details/157872490</link><guid>https://blog.youkuaiyun.com/rain_in_spring/article/details/157872490</guid><author>rain_in_spring</author><pubDate>Sun, 08 Feb 2026 15:35:14 +0800</pubDate><description><![CDATA[Top命令是Linux下一个实时的、交互式的，对操作系统整体监控的命令，可以对CPU、内存、进程监 控。：wait，在过去一段时间内，CPU等待磁盘的时间的占比，wa比较高的话，代表磁盘比较慢，CPU需要长时间等待磁盘。注意：top命令统计的id%和进程列表中每个进程占用的CPU使用率代表的含义不一样。监控磁盘的性能指标时，更关注util%，它代表了磁盘的繁忙度，上限是100%在top命令中，输入数字1，则展示每个核的CPU使用情况。：CPU的空闲率，用100减去id%就是CPU的使用率。]]></description><category></category></item><item><title><![CDATA[四、docker环境部署实战]]></title><link>https://blog.youkuaiyun.com/rain_in_spring/article/details/157761813</link><guid>https://blog.youkuaiyun.com/rain_in_spring/article/details/157761813</guid><author>rain_in_spring</author><pubDate>Thu, 05 Feb 2026 08:53:19 +0800</pubDate><description><![CDATA[Docker 是一个开源的应用容器引擎，基于 Go 语言 并遵从 Apache2.0 协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中，然后发布到任何流行的 Linux机器上，也可以实现虚拟化。容器是完全使用沙箱机制，相互之间不会有任何接口（类似 iPhone 的 app）,更重要的是容器性能开销极低。]]></description><category></category></item><item><title><![CDATA[三、Linux环境部署]]></title><link>https://blog.youkuaiyun.com/rain_in_spring/article/details/157326115</link><guid>https://blog.youkuaiyun.com/rain_in_spring/article/details/157326115</guid><author>rain_in_spring</author><pubDate>Sat, 24 Jan 2026 14:56:24 +0800</pubDate><description><![CDATA[注意：默认安装到  /var/lib 目录下。]]></description><category></category></item><item><title><![CDATA[二、jmeter工具使用]]></title><link>https://blog.youkuaiyun.com/rain_in_spring/article/details/156142306</link><guid>https://blog.youkuaiyun.com/rain_in_spring/article/details/156142306</guid><author>rain_in_spring</author><pubDate>Tue, 13 Jan 2026 18:49:08 +0800</pubDate><description><![CDATA[在压测工具中设置的并发数，其实就是服务端的并发数不需要关注真实用户并发，关注服务端并发一个系统的好坏，不能用支持的并发数衡量，而是以tps、响应时间来衡量性能测试没必要过分关注并发数，而是更应该关注业务性能指标tps、响应时间性能差的系统，比性能好的系统支持更高的并发数如果想让一个系统支持更高的并发数，只需要将系统的响应时间变长即可。]]></description><category></category></item><item><title><![CDATA[一、性能测试理论]]></title><link>https://blog.youkuaiyun.com/rain_in_spring/article/details/154429494</link><guid>https://blog.youkuaiyun.com/rain_in_spring/article/details/154429494</guid><author>rain_in_spring</author><pubDate>Wed, 05 Nov 2025 11:37:44 +0800</pubDate><description><![CDATA[通过一定的手段，在多并发下情况下，获取被测系统的各项性能指标，验证被测系统在高并发下的处理能力、响应能力，稳定性等，能否满足预期。定位性能瓶颈，排查性能隐患，保障系统的质量，提升用户体验。]]></description><category></category></item><item><title><![CDATA[MySql函数]]></title><link>https://blog.youkuaiyun.com/rain_in_spring/article/details/148468517</link><guid>https://blog.youkuaiyun.com/rain_in_spring/article/details/148468517</guid><author>rain_in_spring</author><pubDate>Fri, 06 Jun 2025 10:26:09 +0800</pubDate><description><![CDATA[其中，window_function是窗口函数的名称，expr是参数，有些函数不需要参数；partition by 选项用于将数据行拆分多个分区（组），它的作用类似group by，如果省略了 partition by，则所有的数据作为一个组进行计算该选项用于指定分区内的排序方式frame_clause选项用于在当前分区内指定一个计算窗口，也就是一个与当前行相关的数据子集。]]></description><category></category></item><item><title><![CDATA[MySql的基本查询]]></title><link>https://blog.youkuaiyun.com/rain_in_spring/article/details/148465331</link><guid>https://blog.youkuaiyun.com/rain_in_spring/article/details/148465331</guid><author>rain_in_spring</author><pubDate>Fri, 06 Jun 2025 09:34:34 +0800</pubDate><description><![CDATA[分组之后，对分组后的结果进行条件判断，不能使用where，必须使用having。注意：如果有null值，则不进行运算，当做不存在，列必须为数值列。]]></description><category></category></item><item><title><![CDATA[MySql约束]]></title><link>https://blog.youkuaiyun.com/rain_in_spring/article/details/148446336</link><guid>https://blog.youkuaiyun.com/rain_in_spring/article/details/148446336</guid><author>rain_in_spring</author><pubDate>Thu, 05 Jun 2025 11:11:03 +0800</pubDate><description><![CDATA[【代码】MySql约束。]]></description><category></category></item><item><title><![CDATA[mysql-多表操作]]></title><link>https://blog.youkuaiyun.com/rain_in_spring/article/details/148267133</link><guid>https://blog.youkuaiyun.com/rain_in_spring/article/details/148267133</guid><author>rain_in_spring</author><pubDate>Wed, 28 May 2025 00:09:46 +0800</pubDate><description><![CDATA[外键约束是表的一个特殊字段，经常与主键约束一起使用，对于两个具有关联关系的表而言，相关联字段中主键所在的表为，外键所在的表为外键用来建立主表与从表的关联关系，为两表的数据建立连接，约束两表中数据的一致性和完整性。]]></description><category></category></item><item><title><![CDATA[django-15-序列化器1]]></title><link>https://blog.youkuaiyun.com/rain_in_spring/article/details/141253380</link><guid>https://blog.youkuaiyun.com/rain_in_spring/article/details/141253380</guid><author>rain_in_spring</author><pubDate>Thu, 19 Sep 2024 13:35:16 +0800</pubDate><description><![CDATA[文本字段，可以验证文本小于max_length大于min_length。]]></description><category></category></item><item><title><![CDATA[django-5-登陆和注册]]></title><link>https://blog.youkuaiyun.com/rain_in_spring/article/details/141257910</link><guid>https://blog.youkuaiyun.com/rain_in_spring/article/details/141257910</guid><author>rain_in_spring</author><pubDate>Thu, 19 Sep 2024 13:34:49 +0800</pubDate><description><![CDATA[整个CORS通信过程，都是浏览器自动完成，不需要用户参与。浏览器一旦发现AJAX请求跨源，就会自动添加一些附加的头信息，有时还会多出一 次附加的请求，但用户不会有感觉。Django - CORS -headers是一个Django应用程序，用于处理跨源资源共享(CORS)所需的服务器头信息。CorsMiddleware应该放在尽可能高的位置，特别是在任何可以生成响应的中间件之前，比如django的。Django-cors-headers 是通过中间件实现cors头设置的，所以需要设置对应的中间件。]]></description><category></category></item><item><title><![CDATA[django-15-序列化器2]]></title><link>https://blog.youkuaiyun.com/rain_in_spring/article/details/141253419</link><guid>https://blog.youkuaiyun.com/rain_in_spring/article/details/141253419</guid><author>rain_in_spring</author><pubDate>Wed, 28 Aug 2024 16:19:42 +0800</pubDate><description><![CDATA[1、在models.py文件中，在模型中设置参数，如 StudentDetails 和 Courses；2、在文件，将其字段显示的添加到字段列表中，如：StudentsSerializer3、在序列化器中，定义depth参数。]]></description><category></category></item><item><title><![CDATA[django-16-身份验证与权限]]></title><link>https://blog.youkuaiyun.com/rain_in_spring/article/details/141253461</link><guid>https://blog.youkuaiyun.com/rain_in_spring/article/details/141253461</guid><author>rain_in_spring</author><pubDate>Wed, 28 Aug 2024 16:19:31 +0800</pubDate><description><![CDATA[要实现自定义权限，需要继承如果请求被授予访问权限，则该方法应返回True，否则返回False。注意对象级的方法只有在视图级的检查已经通过的情况下才会被调用。如果测试失败，自定义权限应该引发一个异常。若要更改与异常关联的错误消息，请在自定义权限上直接实现message属性。否则，将使用PermissionDenied的default_detail属性。类似地，要更改与异常相关的代码标识符，请直接在自定义权限上实现一个code属性——否则将使用PermissionDenied的default_code属性。]]></description><category></category></item><item><title><![CDATA[django-14-测试步骤执行接口]]></title><link>https://blog.youkuaiyun.com/rain_in_spring/article/details/141258175</link><guid>https://blog.youkuaiyun.com/rain_in_spring/article/details/141258175</guid><author>rain_in_spring</author><pubDate>Wed, 28 Aug 2024 16:19:08 +0800</pubDate><description><![CDATA[接口名称：/test_steps/run/请求方式： POST参数格式： JSON请求参数：请求示例： json格式参数。]]></description><category></category></item><item><title><![CDATA[django-13-测试执行]]></title><link>https://blog.youkuaiyun.com/rain_in_spring/article/details/141258138</link><guid>https://blog.youkuaiyun.com/rain_in_spring/article/details/141258138</guid><author>rain_in_spring</author><pubDate>Wed, 28 Aug 2024 16:18:54 +0800</pubDate><description><![CDATA[当要执行某个测试任务时，需要提供测试环境，测试版本，测试参数，测试员，然后后端会根据对应的数据关系，去 数据库中查询所有用例，组织成测试数据交给 easytest 去执行，然后把生成的结果写到数据库。]]></description><category></category></item></channel></rss>