当前位置: 首页 > news >正文

如何修改wordpress站名如何制作公司网站

如何修改wordpress站名,如何制作公司网站,wordpress 改网站域名,发布新闻稿一、redis是单线程 Redis是单线程的#xff0c;但是为什么还那么快#xff1f;主要原因有下面3点原因#xff1a; 1. Redis是纯内存操作#xff0c;执行速度非常快。 2. 采用单线程#xff0c;避免不必要的上下文切换可竞争条件#xff0c;多线程还要考虑线程安全问题。 …一、redis是单线程 Redis是单线程的但是为什么还那么快主要原因有下面3点原因 1. Redis是纯内存操作执行速度非常快。 2. 采用单线程避免不必要的上下文切换可竞争条件多线程还要考虑线程安全问题。 3. 使用I/O多路复用模型非阻塞IO。 二、I/O多路复用 能解释一下I/O多路复用模型 Redis是纯内存操作执行速度非常快它的性能瓶颈是网络延迟而不是执行速度 I/O多路复用模型主要就是实现了高效的网络请求。要解释I/O多路复用模型需要从下面3个知识慢慢来 1. 用户空间和内核空间。 2. 常见的IO模型阻塞IOBlocking IO、非阻塞IONonblocking IO、IO多路复用IO Multiplexing。 3. Redis网络模型。 三、用户空间和内核空间 1.作用 Linux系统中一个进程使用的内存情况划分两部分内核空间、用户空间。 1. 用户空间只能执行受限的命令Ring3而且不能直接调用系统资源必须通过内核提供的接口来访问。 2. 内核空间可以执行特权命令Ring0调用一切系统资源。 Linux系统为了提高IO效率会在用户空间和内核空间都加入缓冲区 1. 写数据时要把用户缓冲数据拷贝到内核缓冲区然后写入设备。 2. 读数据时要从设备读取数据到内核缓冲区然后拷贝到用户缓冲区。 2.会出现什么问题呢 1. 当等待数据时会浪费大量系统资源。 2. 拷贝的过程比较繁琐。 3.如何解决 就是下面说到的IO模型。 四、常见的IO模型 1.阻塞IO模型 顾名思义阻塞IO就是两个阶段都必须阻塞等待 阶段一 1. 用户进程尝试读取数据比如网卡数据。 2. 此时数据尚未到达内核需要等待数据。 3. 此时用户进程也处于阻塞状态。 阶段二 1. 数据到达并拷贝到内核缓冲区代表已就绪。 2. 将内核数据拷贝到用户缓冲区 拷贝过程中用户进程依然阻塞等待。 3. 拷贝完成用户进程解除阻塞处理数据。 结论可以看到阻塞IO模型中用户进程在两个阶段都是阻塞状态。 2.非阻塞IO模型 顾名思义非阻塞IO的recvfrom操作会立即返回结果而不是阻塞用户进程。 阶段一 1. 用户进程尝试读取数据比如网卡数据。 2. 此时数据尚未到达内核需要等待数据。 3. 返回异常给用户进程。 4. 用户进程拿到error后再次尝试读取。 5. 循环往复直到数据就绪。 阶段二 1. 将内核数据拷贝到用户缓冲区。 2. 拷贝过程中用户进程依然阻塞等待。 3. 拷贝完成用户进程解除阻塞处理数据。 总结可以看到非阻塞IO模型中用户进程在第一个阶段是非阻塞第二个阶段是阻塞状态。虽然是非阻塞但性能并没有得到提高。而且忙等机制会导致CPU空转CPU使用率暴增。 3.IO多路复用 1基本原理 IO多路复用是利用单个线程来同时监听多个Socket 并在某个Socket可读、可写时得到通知从而避免无效的等待充分利用CPU资源。 阶段一 1. 用户进程调用select指定要监听的Socket集合。 2. 内核监听对应的多个socket。 3. 任意一个或多个socket数据就绪则返回readable。 4. 此过程中用户进程阻塞。 阶段二 1. 用户进程找到就绪的socket。 2. 依次调用recvfrom读取数据。 3. 内核将数据拷贝到用户空间。 4. 用户进程处理数据。 2其他通知方法 IO多路复用是利用单个线程来同时监听多个Socket 并在某个Socket可读、可写时得到通知从而避免无效的等待充分利用CPU资源。不过监听Socket的方式、通知的方式又有多种实现常见的有select、poll、epoll。 差异 1. select和poll只会通知用户进程有Socket就绪但不确定具体是哪个Socket 需要用户进程逐个遍历Socket来确认。 2. epoll则会在通知用户进程Socket就绪的同时把已就绪的Socket写入用户空间。 五、Redis网络模型 Redis通过IO多路复用来提高网络性能并且支持各种不同的多路复用实现并且将这些实现进行封装 提供了统一的高性能事件库。 核心就是IO多路复用事件派发。 六、面试时候的回答 面试官Redis是单线程的但是为什么还那么快 候选人这个有几个原因吧 1、完全基于内存的C语言编写。 2、采用单线程避免不必要的上下文切换可竞争条件。 3、使用多路I/O复用模型非阻塞IO。 例如bgsave 和 bgrewriteaof 都是在后台执行操作不影响主线程的正常使用不会产生阻塞 面试官能解释一下I/O多路复用模型 候选人I/O多路复用是指利用单个线程来同时监听多个Socket 并在某个Socket可读、可写时得到通知从而避免无效的等待充分利用CPU资源。目前的I/O多路复用都是采用的epoll模式实现它会在通知用户进程Socket就绪的同时把已就绪的Socket写入用户空间不需要挨个遍历Socket来判断是否就绪提升了性能。 其中Redis的网络模型就是使用I/O多路复用结合事件的处理器来应对多个Socket请求比如提供了连接应答处理器、命令回复处理器命令请求处理器 在Redis6.0之后为了提升更好的性能在命令回复处理器使用了多线程来处理回复事件在命令请求处理器中将命令的转换使用了多线程增加命令转换速度在命令执行的时候依然是单线程。
http://www.w-s-a.com/news/137858/

相关文章:

  • 宁波网站建设与推广方案网站有了备案号之后能做什么
  • 汕头手机端建站模板pinterest app下载
  • 网站主机免费宁波网站建设优化诊断
  • 吧网站做软件的软件下载简单的ui界面制作
  • 陕西网站制作公司网页制作与设计代码
  • 做网站行情郑州微信网站开发
  • 河间网站建设制作null wordpress theme
  • h5网站制作网站开发网站建设文翻译工作
  • 网站建设 税种秦皇岛哪有网站优化公司
  • 专业开发网站设计找人做网页需要多少钱
  • 手机购物网站 建站网站建设网站制作网站设计
  • 基于iview的网站开发模板小程序制作需要什么语言
  • 精美网站设计保定建行网站首页登录
  • 网站建设常见问题做网站保存什么格式最好
  • 营销型网站建设与网页设计网站建设 amp 找VX cp5173
  • 新网站该如何做网站优化呢儿童手工
  • 湖北现代城市建设集团网站搜索引擎优化的作用
  • 上海做网站吧开一家软件开发公司需要什么
  • 阿里巴巴网站建设改图片建设厅官方网站河南
  • 邓砚谷电子商务网站建设镇江网
  • 网站空间支持什么程序工作服款式
  • 网站单页品牌网站建设 蝌蚪5小
  • 怎么做外贸网站需注意哪些做电脑系统的网站
  • 网站建设介绍推广用语河南网站优化外包服务
  • 课程网站模板贵州省城乡与建设厅网站
  • 网站模板及源码谁家网站用户体验做的好
  • 做网站的技术要求搜索栏在wordpress菜单上位置
  • 如何给网站弄ftpwordpress怎么添加关键词描述
  • 成都工程建设信息网站金科网站建设
  • 传媒公司 网站开发厦门网站建设门户