Muser

弱小和无知不是生存的障碍,傲慢才是


  • Home

  • About

  • Tags

  • Categories

  • Archives

  • Notes

  • Commonweal 404

nginx+lua动态改变upstream

Posted on 2017-11-23 | Last modified: 2017-11-25 | In Work
Words count: 1,373
在做毕设的时候需要动态改变通过nginx代理的服务器数量。背景大概是我有一个generator不断产生负载打在nginx上,还有一个monitor根据generator生成负载的qps来动态决定需要多少台服务器刚好能够承担这个qps的请求,因此需要动态修改nginx中的upstream。以前在配置nginx的时候,upstream都是写死在nginx.conf文件中的,现在要动态改变upstream,这需要在nginx运行过程中用脚本修改,那么就用Lua来实现吧。 nginx+lua安装之前安装过了nginx,但是没有安装lua模块,下面按照官网的步骤开始集成Lua。需要下载: LuaJIT:Lua编译器(a Just-In-Time Compiler for Lua),2.0或2.1版本均可 ngx_devel_kit (NDK) module lua-nginx-module 安装好LuaJIT,解压NDK module和lua-nginx-module,继续。 123456789101112131415# 打开nginx源代码目录: c ...
Read more »

解决校园网登录release and renew ip address问题

Posted on 2017-11-09 | Last modified: 2017-12-06 | In Work
Words count: 156
今天在登录校园网时出现了”Invalid ip address, please release and renew it”的错误,无法正常上网,记录一下解决办法。 Windows系统Windows系统下,在cmd中输入ipconfig releaseipconfig renew Linux系统Linux系统下,ip a查看所有网卡:在我机器上wlan0是连接校园网的无线网卡 接着执行以下2条命令:sudo dhclient -v -r wlan0sudo dhclient -v wlan0第一条命令相当于释放当前已分配的ip地址,第二条命令从DHCP server重新获得一个ip 重新登录校园网即可。 参考https://www.cnblogs.com/Leo_wl/p/5484108.html
Read more »

(转载)消息队列的使用场景

Posted on 2017-11-01 | Last modified: 2017-11-01 | In Work
Words count: 3,454
原文:http://www.cnblogs.com/linjiqin/p/5720865.html 消息队列概述消息队列中间件是分布式系统中重要的组件,主要解决应用解耦,异步消息,流量削锋等问题,实现高性能,高可用,可伸缩和最终一致性架构。目前使用较多的消息队列有ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ 消息队列应用场景以下介绍消息队列在实际应用中常用的使用场景。异步处理,应用解耦,流量削锋,日志处理和消息通讯五个场景。 异步处理场景说明:用户注册后,需要发注册邮件和注册短信。传统的做法有两种 1.串行的方式;2.并行方式 串行方式:将注册信息写入数据库成功后,发送注册邮件,再发送注册短信。以上三个任务全部完成后,返回给客户端。 并行方式:将注册信息写入数据库成功后,发送注册邮件的同时,发送注册短信。以上三个任务完成后,返回给客户端。与串行的差别是,并行的方式可以提高处理的时间 假设三个业务节点每个使用50毫秒钟,不考虑网络等其他开销,则串行方式的时间是150毫秒,并行的时间可能是1 ...
Read more »

NIO编程学习笔记(三)

Posted on 2017-10-24 | Last modified: 2018-12-04 | In Learning
Words count: 2,651
Java NIO Buffer概述Java NIO Buffer通常被用来与Channel交互,我们知道,数据从channel被读到buffer,从buffer被写入channel。一个buffer是一个内存块,让我们写入数据,写完之后从中读取数据。这块内存被封装成NIO Buffer对象,并提供了一些方法让我们方便地操作这块内存。 Buffer基本用法Buffer读取和写入数据通常分以下4个过程: 向buffer写入数据 调用buffer.flip() 从buffer读数据 调用buffer.clear()或者buffer.compact() 当我们向buffer写数据时,buffer会自动跟踪写了多少数据。当我们需要从buffer读数据时,需要将buffer从”writing mode”切换到”reading mode”,也就是要调用flip()方法。在reading mode下我们可以读取所有被写入buffer的数据。 当我们已经读取完所有数据时,我们需要清空buffer,好让buffer可以重新被写入。有两种方法做到这点:clear( ...
Read more »

NIO编程学习笔记(二)

Posted on 2017-10-24 | Last modified: 2018-12-04 | In Learning
Words count: 1,626
Java NIO Channel概述Java NIO Channel与流(stream)的概念相似,但有以下几点不同: 我们可以同时对channel进行读写操作,而stream是单向的,读和写不能同时进行 Channel可以异步地进行读写 Channel总是向buffer读数据,或者从buffer写数据 前面提到过Channel主要有以下四种实现类: FileChannel DatagramChannel SocketChannel ServerSocketChannel FileChannel向文件读写数据DatagramChannel通过UDP读写数据SocketChannel通过TCP读写数据ServerSocketChannel监听即将到来的TCP连接,就像Web服务器所做的那样。对每一个到来的TCP连接,都会创建一个SocketChannel 简单的关于Channel的例子这个例子用了FileChannel将数据读到buffer中 123456789101112131415161718192021RandomAccessFil ...
Read more »
1…567…12
Muser

Muser

Coding While Thinking

60 posts
6 categories
67 tags
RSS
Search
© 2020 Muser | Site words count: 55.0k
Powered by Hexo
|
Theme — NexT.Muse