在程序员编写代码时候其实需要考虑到很多问题:可用性(完整的达到业务目的)健壮性(程序在各种环境各种操作都能保证正常的运行)复用性(代码能够被别的模块调用来达到不同的目的,这里一定程度上有解耦的思想)可扩展性(代码设计足够灵活,能够适应尽可能多的业务)性能内存占用(在我理解里性能与内存占用往往两难全,性能的提升,往往代表内存的更多占用。比如动态数组ArrayList为了避免频繁的扩容,会进行1.5倍
分类:
编程语言 时间:
2020-10-14 20:49:30
阅读次数:
47
在一台主机中,通过端口号进行标识应用程序,每个端口号长度为2个字节(16位),可表示的数字个数为216(65536),即每台计算机最多可以有65536个应用进程分别占用一个端口号。 端口号只标识本机中的应用,与互联网上的其他主机没有关联。 根据端口号的范围可将端口分为两类: 1、熟知端口号: 数值范 ...
分类:
其他好文 时间:
2020-10-14 20:32:57
阅读次数:
20
Linux中查看CPU、内存和IO的占用情况,以及当发生OOM时自动dump内存快照与简单分析 ...
分类:
系统相关 时间:
2020-10-13 17:45:32
阅读次数:
43
链表的概念以及链表与数组的差异不做过多的叙述,相信大家都耳熟能详,这里以c#语言实现简单的双向链表,作为备用,记录下~ public class Node<T> { private Node<T> prev; private Node<T> next; private T val; public N ...
很多东西说真的,不用了就忘了,而我绝对是忘的最快的那个,这次又遇到了这个linux中计算内存的这个情况先说明,如果是centos7的,那就比较舒服了看的,直接total-used=buffer+cache就完事了如果是centos6的呢,free-m的时候会出现-/+buffer/cache这种的,也就是会多出一行,实际内存占用:used-buffers-cached即total-free-buf
分类:
系统相关 时间:
2020-10-12 20:44:37
阅读次数:
35
主要介绍缓存使用的典型场景、实操案例分析、Redis使用规范及常规Redis监控。
分类:
其他好文 时间:
2020-10-12 20:16:10
阅读次数:
21
其实这次的内容我是想放在上一篇的博文中的,但是上次犯懒了,就放在这里了奥。 基于mysql持久化操作: 将爬取数据写入文件这种情况还是少见的,因为文件无论是内存占用还是读写速度都存在一定的瑕疵,所以我们更多的是操作数据库。因为items对象已经准备好了所以我们只需要进行pipeline管道更改就可以 ...
分类:
编程语言 时间:
2020-10-10 17:35:46
阅读次数:
25
之前我的做法是上传文本文件,保存到服务器硬盘,再去读取服务器上的文本文件。 但是只是因为要临时使用一下文本文件中的内容,就保存文件到服务器,会占用服务器磁盘空间,效率也很低。 使用下面的方法可以直接在代码中打开并读取文本文件的内容 public void ProcessRequest(HttpCon ...
分类:
Web程序 时间:
2020-10-09 21:00:52
阅读次数:
44
Nginx相对于Apache的优势: 1.轻量级,采用C进行编写,同样的web服务,会占用更少的内存及资源 2.抗并发,nginx以epoll and kqueue作为开发模型,处理请求是异步非阻塞的,多个连接对应一个进程,负载能力比apache高很多, 而apache则是同步多进程模型,只能一个连 ...
分类:
Web程序 时间:
2020-10-08 19:50:06
阅读次数:
44
为什么有的时候,析构函数必须是虚函数? 将可能会被继承的父类的析构函数设置为虚函数,可以保证当我们new一个子类的时候,然后使用基类指针指向该子类对象,释放基类指针的时候,可以释放掉子类空间,防止内存泄漏。 c++默认的析构函数不是虚函数是因为虚函数需要额外的虚函数表和虚表指针,占用额外的内存。而对 ...
分类:
编程语言 时间:
2020-10-08 19:43:22
阅读次数:
27