Nginx学习
nginx学习1.nginx 和可以做什么事情2.Nginx 作为 web 服务器
Nginx 是高性能的 HTTP 和反向代理的web服务器,处理高并发能力是十分强大的,能经受高负 载的考验,有报告表明能支持高达 50,000 个并发连接数。
Nginx 可以作为静态页面的 web 服务器,同时还支持 CGI 协议的动态语言,比如 perl、php 等。但是不支持 java。Java 程序只能通过与 tomcat 配合完成。Nginx 专为性能优化而开发, 性能是其最重要的考量,实现上非常注重效率 ,能经受高负载的考验,有报告表明能支持高 达 50,000 个并发连接数。
正向代理Nginx 不仅可以做反向代理,实现负载均衡。还能用作正向代理来进行上网等功能。 正向代理:如果把局域网外的 Internet 想象成一个巨大的资源库,则局域网中的客户端要访 问 Internet,则需要通过代理服务器来访问,这种代理服务就称为正向代理。
简单一点:通过代理服务器来访问服务器的过程 就叫 正向代理。需要在客户端配置代理服务器进行指定网站访问
反向代理反向代理,其实客户端对代理是 ...
C语言学习笔记
C语言学习笔记前言适应期最后一周马上就要结束了,回顾这一周的学习生活,只能用痛并快乐来形容。刚开始上手学习C语言感觉还是比较简单易懂的前面的声明 习惯 数据类型都非常好理解 学习进度一日千里,当时我对自己充满了自信。然后三天后 第一周作业出现了,看到作业的时候我是拒绝的,因为上面写的很多东西我是想不到该去怎么实现的。 三天的学习 ,很多知识在脑海里只是走马观花的过了一遍, 没有留下什么深刻的记忆。 但是摆烂是没有用的 ,只能硬着头皮做了。于是第一周的痛苦生活就开始了,反复翻阅慕课网 去思考怎么去实现每一个需求,晚上也是辗转反侧去思考BUG是怎么出来的。也是功夫不负有心人,我也顺利的完成了大多数要求,还受到了学姐的表扬(划重点)。
这篇笔记是我自己整理而来 主题部分是慕课上的教学 ,和其他网站上的内容 再加上我自己所理解的一些心得,才疏学浅 ,如有错误请纠正指出。
习惯写代码应该有一个良好的习惯 使你的代码具有良好的可读性 我总结有以下几点
1.一个说明或一个语句占一行。
2.函数体内的语句要有明显缩进,通常以按一下Tab键为一个缩进。
3.括号要成对写,如果需要删除的话也要成对删除。
...
Python的内存管理
Python的内存管理机制内存的申请python申请内存会调用_PyObject_Malloc 函数来进行函数的申请
当申请内存大于512个byte的时候会调用C的malloc函数来申请内存
小于512时就会调用下面的pymalloc_alloc。在调用pymalloc_alloc时会首先进行一个内存对齐。他会把你申请的内存大小都改为8的倍数,比如你申请1~8个byte内存他都会给你8个8byte,这样做的目的也是为了减少内存碎片的产生。当你对齐结束后,Python会去找对应大小的Pool里找一个没有使用的一个Block丢给你,这样就完成了一次内存的分配。同样的返还的时候也是返还到对应的Pool里而不是直接Free。会被加入到Pool里边的FreeBolck链表中去,标记成可用状态。这样做的好处就是不需要再去找系统申请空间。
Python一般不会直接Free内存,只会在Arena里面没有一个Pool的时候free空间,所以Python里对于空间的free都是在Arena这个层级进行操作的
python的内存管理层级为了减少内存碎片 python有一套自己的内存管理机制
Block一 ...
计算机网络自顶向下方法
计算机网络 自顶向下方法
计算机网络与互联网由节点和边构成的网络我们称其为计算机网络
从服务的角度看,计算机网络是分布式的应用进程和为分布式应用进程提供服务的基础设施。
一些术语:节点主机节点各种联网的设备,主机 服务器、包括联网的机顶盒,冰箱上运行的应用程序
主机节点和主机上运行的应用程序也被成为网络边缘
数据交换节点:交换机、路由器等网络交换设备
互联的路由器交换机也被成为网络核心
边通信链路
光纤、同轴电缆、无线电、卫星
传输速率 就是带宽bps (bit per second)单位是bit 而不是Byte 所以所谓的百兆带宽也就10M多的下载速度= =
接入网链路主机连接到互联网的链路
主干链路路由器之间的链路
协议协议是支撑互联网工作的标准,在通信过程中所要遵守的规则
协议定义了两个或多个通信实体之间交换的报文格式和次序,以及在报文传输或接收或其他事件方面所采取的动作
InternetInternet是网络的网络,是多个局域网相连得到的大的网络结构
网络结构网络分为了三个结构
边缘系统,核心系统和接入系统
边缘系统就是上面提到的主机节点以及主机节点 ...
HTTP2的问题
HTTP/2HTTP/2 的问题队头阻塞
HTTP/2解决了HTTP的队头阻塞问题,但是并没有解决TCP队头阻塞问题!
HTTP/1.1相比较于HTTP/1.0来说,最主要的改进就是引入了持久连接(keep-alive)。
所谓的持久连接就是:在一个TCP连接上可以传送多个HTTP请求和响应,减少了建立和关闭连接的消耗和延迟。
引入了持久连接之后,在性能方面,HTTP协议有了明显的提升。
HTTP/1.1允许在持久连接上使用请求管道,是相对于持久连接的又一性能优化。
所谓请求管道,就是在HTTP响应到达之前,可以将多条请求放入队列,当第一条HTTP请求通过网络流向服务器时,第二条和第三条请求也可以开始发送了。在高时延网络条件下,这样做可以降低网络的环回时间,提高性能。
但是,对于管道连接还是有一定的限制和要求的,其中一个比较关键的就是服务端必须按照与请求相同的顺序回送HTTP响应。
这也就意味着,如果一个响应返回发生了延迟,那么其后续的响应都会被延迟,直到队头的响应送达。这就是所谓的HTTP队头阻塞。
但是HTTP队头阻塞的问 ...
7.1~7.2前往保定考试旅途随笔
7.1~7.2前往保定考试旅途随笔前言今年三月份,我报名参加了日语N2考试。由于考生众多,我没有成功选择到山大作为考点。而且实际上我没有花太多时间来学习,大部分时间都在复习之前学过的内容。这次考试我没有太多底气,但我仍然决定去参加。毕竟N2考试的费用是550块钱,不去的话会觉得很心疼,去了也同样如此。因为七月三号还要参加高数考试,匆忙从保定赶回来再去考试简直是一场灾难。然而,在经过一番思想斗争后,我决定还是去保定参加N2考试。
旅途出发前我提前购买了下午三点的火车票。七月份正值放假季节,中考和高考也已结束,大部分大学也陆续放假了(为什么太理放假这么晚呢= =)。因此,火车票并不容易购买。七月一日中午十二点,我吃完了食堂里六块半的经济套餐,然后回到宿舍整理行李。现代基础设施的完善减少了旅途中的很多麻烦,所以我只带了身份证、手机、N2语法书,还有一些路上吃的食品和一瓶水。在宿舍里闲逛了一阵后,我一点半就前往公交车站准备去太原南站。
公交车上公交车上没有以往星期天那种挤得水泄不通的情景了,大学城的学校基本上已经放假,所以公交车相当空旷。这是我第一次坐上如此空旷的902路公 ...
深度学习入门
深度学习入门感知机感知机接受两个输入信号。x1、x2是输入信号,y是输出信号,w1、w2是权重(w是weight的首字母)。图中的○称为“神经元”或者“节点”。输入信号被送往神经元时,会被分别乘以固定的权重(w1x1、w2x2)。神经元会计算传送过来的信号的总和,只有当这个总和超过了某个界限值时,才会输出1。这也称为“神经元被激活”。这里将这个界限值称为阈值,用符号θ表示。
神经网络激活函数将输入信号总和转换为输出信号的就是激活函数$$a = b + w_1 x_1 + w_2x_2$$
$$y = h(a)$$
sigmoid函数$$h(x) = \frac{1}{1+exp(-x)}$$神经网络中用sigmoid函数作为激活函数,进行信号的转换,转换后的信号被传送给下一个神经元
softmax分类问题中使用的softmax函数可
$$y_k = \frac{exp(a_k)}{\sum_{i=1}^{n}exp(a_i)}$$
softmax函数的特征softmax函数的输出是0*.0到1.*0之间的实数输出总和为1是softma ...