当我们启动nginx服务之后,可以使用如下命令查看nginx进程 显然易见,nginx大致分为mas
原创
2021-11-19 14:07:04
92阅读
当我们启动nginx服务之后,可以使用如下命令查看nginx进程
显然易见,nginx大致分为master以及worker两部分:
master-workers 机制
首先./nginx -s reload是一个热部署命令:不影响正在使用的worker,其他空闲worker会进行重新加载,待到忙碌的worker工作完毕在执行重新加载
其次,对于每个 worker 进程来说,独立的进程,不需
转载
2021-08-17 14:59:10
112阅读
...
转载
2021-09-05 13:52:00
61阅读
2评论
1. Nginx的模块与工作原理Nginx由内核和模块组成,其中,内核的设计非常微小和简洁,完成的工作也非常简单,仅仅通过查找配置文件将客户端请求映射到一个location block(location是Nginx配置中的一个指令,用于URL匹配),而在这个location中所配置的每个指令将会启动不同的模块去完成相应的工作。Nginx的模块从结构上分为核心模块、基础模块和第三方模块:
Feign是什么?简单来说,feign是用在微服务中,各个微服务间的调用。它是通过声明式的方式来定义接口,而不用实现接口。接口的实现由它通过spring bean的动态注册来实现的。feign让服务间的调用变得简单,不用各个服务去处理http client相关的逻辑。并且它里面集成了ribbon用来做负载均衡,通过集成了hystrix用来做服务熔断和降级。在feign的使用中,我们主要用到它的两个
转载
2021-05-08 21:24:03
193阅读
2评论
前言今天这篇文章是比较偏“教程”一点的文章。但也由浅入深,认真地分析了源码,并且介绍了一些在使用Spring Cache中常见的问题和解决方案,肯定是比简单的入门文档更有深度一些的,相信大家看了之后会有一定的收获。阿
原创
2021-07-18 11:39:41
197阅读
一. 前言 希望更加深入理解 Binder 实现机制的,可以阅读文末的参考资料以及相关源码。 二. Binder 概述 简单介绍下什么是 Binder。Binder 是一种进程间通信机制,基于开源的 OpenBinder 实现;OpenBinder 起初由 Be Inc. 开发,后由 Plam In
转载
2019-07-25 18:54:00
191阅读
2评论
Netty原理剖析 https://blog.csdn.net/excellentyuxiao/article/details/53390408 1. Netty简介Netty是一个高性能、异步事件驱动的NIO框架,基于JAVA NIO提供的API实现。它提供了对TCP、UDP和文件传输的支持,作为
转载
2018-12-07 09:45:00
165阅读
2评论
作者疑问???其实对于HashMap我有一点不是特别明白。为什么一定要将链表转换成红黑树的阈值设置为8?注释也说了,根据泊松分布,能够到达8个的已经是亿分之6,几率十分小,那为什么又要在最后的那个节点,来进行转换呢?这不是白白浪费空间?网上和很多视频都说,因为8的时候,链表的平均查找长度为4,链表的查找长度为3。但是此时红黑树会多占用很多内存空间呀。并且超过了8,等到删除元素往回走的时候,只有到了
原创
2023-01-19 07:11:22
113阅读
FutureTask用于在异步操作场景中,FutureTask作为生产者(执行FutureTask的线程)和消费者(获取FutureTask结果的线程)的桥梁,如果生产者先生产出了数...
转载
2020-10-28 21:40:00
138阅读
2评论
SpringBoot启动过程第一步: 创建SpringApplication保存一些信息。判定当前应用的类型。【ClassUtils判断。一般为Servlet应用】bootstrappers:初始启动引导器(List<Bootstrapper>):去spring.factories文件中找 org.springframework.boot.Bootstrapper找Applicatio
原创
2022-06-26 18:02:35
109阅读
为什么用Stormstorm是一个免费、开源的分布式实时计算框架。它让你更方便、可靠的处理实时发送的消息。如果你之前了解过hadoop,应该知道hadoop能很快速、方便的帮你完成批量数据处理,而storm可以认为是实时数据处理领域的hadoop。storm简单,虽然他是用jvm之上的clojure编写的,但是同样支持非jvm语言。如果你不知道是否该使用storm,你可以先看看你有没有过这
原创
2023-05-17 20:03:11
128阅读
1.SparkContex原理剖析1.图解: 2.SparkContext源码分析1.TaskScheduler创建: SparkContext.scala // Create and start the scheduler private[spark] var (schedulerBackend, taskScheduler) = SparkContext.crea...
原创
2022-07-14 09:51:22
85阅读
AQS即队列同步器,是构建其他同步器的一个重要的基础框架,同步器自身是没有实现任何同步接口。它是通过控制一个int类型的state变量来表示同步状态,使用一个内置的FIFO(先进先出)队列来构建工作队...
转载
2021-09-15 15:40:23
104阅读
JSP原理剖析 1、定义 JSP(Java Servet Page)即:java服务器端页面,也和Servlet一样,是用于开发动态Web的技术 最大的特点 写JSP就像在写HTML 区别:HTML只给用户提供静态的数据,而JSP页面中可以嵌入java代码为用户提供动态数据 2、JSP原理 JSP怎 ...
转载
2021-10-18 12:39:00
123阅读
2评论
一 什么是JSP? JSP全称:javaserver pages java服务器页面。 作用:响应客户
原创
2022-09-28 10:56:06
68阅读
ThreadLoal 变量,线程局部变量,ThreadLocal为变量在每个线程中都创建了一个副本,那么每个线程可以访问自己内部的副本变量。我们在使用时通常 :private static ThreadLocal threadLocal = new ThreadLocal(); 用 private static 修饰每个线程Thread都有自己私有的ThreadLocalMap对象属性 /* ThreadLocal values pertaining to this thread. This map
原创
2021-08-27 10:19:35
263阅读
Nginx除了众所周之的可以搭建很好的LNMP平台外,它还提供了许多其他高级功能,如反向代理,url重写等。现在就剖析Nginx的深层功能。
安装nginx
# yum -y install pcre-devel //nginx要用到的包 # groupadd -r nginx #&
原创
2012-08-10 22:16:13
2149阅读
1评论
Nginx的log日志分为access log 和 error log其中access log 记录了哪些用户,哪些页面以及用户浏览器、ip和其他的访问信息error log 则是记录服务器错误日志错误日志的形式如下:10.1.1.1 - - [22/Aug/2015:16:48:14 +0800] "POST /ajax/MbpRequest.do HTTP/1.1" 200 367 "-" "
原创
2015-09-14 22:16:36
1641阅读
本文研究的主要是Python程序运行原理,具体介绍如下。编译型语言(C语言为例)动态型语言一个程序是如何运行起来的?比如下面的代码#othermodule.py
def add(a, b):
return a + b
#mainrun.py
import othermodule
a = ['xiaoke', 1, 'python']a = 'xiaoke string'
def func():
a
转载
2023-07-06 11:09:34
57阅读