进程概念
进程不只是程序代码,程序代码有时称为文本段,进程还包括当前活动,通过程序计数器的值和处理器寄存器的内容来表示。进程包括 堆(是在进程运行是动态分配的内存)、栈(包括临时数据,如函数参数、返回值地址和局部变量表)和数据段(包括全局变量)
程序本身不是进程:程序只是被动实体,如存储在磁盘上包含一系列指令内容的文件(通常被称为可执行文件),而进程是活动实体,他有一个程序计数器用来表示下一个要执行的命令和相关资源集合。当一个可执行文件被装入内存中时,一个程序才能成为进程。
进程不只是程序代码,程序代码有时称为文本段,进程还包括当前活动,通过程序计数器的值和处理器寄存器的内容来表示。进程包括 堆(是在进程运行是动态分配的内存)、栈(包括临时数据,如函数参数、返回值地址和局部变量表)和数据段(包括全局变量)
程序本身不是进程:程序只是被动实体,如存储在磁盘上包含一系列指令内容的文件(通常被称为可执行文件),而进程是活动实体,他有一个程序计数器用来表示下一个要执行的命令和相关资源集合。当一个可执行文件被装入内存中时,一个程序才能成为进程。
数据库的优化是每一个DBA,同时也是每一个后台开发人员都要关注的一个问题,数据库优化好了的话,可以为应用服务器和数据库服务器减轻很大的压力,同时可能解决并发的高访问量,但是,数据库优化可以说不是一蹴而就,一朝一夕就能完成的,不可能说,更改数据库的一个措施就将数据库的性能提升很大,优化一个措施,可能不能够立即看到性能的提高,因为数据库优化是一点一点积累起来的,这一点的优化,那儿的一点优化,那么数据库性能就逐渐的体现出来。下面就以优化MySQL数据库为例子进行优化:
一范式就是属性不可分割。属性是什么?就是表中的字段。
不可分割的意思就按字面理解就是最小单位,不能再分成更小单位了。
这个字段只能是一个值,不能被拆分成多个字段,否则的话,它就是可分割的,就不符合一范式。不过能不能分割并没有绝对的答案,看需求,也就是看你的设计目标而定。
寒假里,自己找了一份实习的工作,分配给我的任务是完成业务操作的自动化工作,就是提高老板的工作效率,解放双手。
老板的任务要求是:在阿里妈妈的订单下载页面中,由于有数据更新的时候,就要将订单报表,手动下载到电脑本地,然后用公司的开发工具上传到服务器中,这样就可以在平台中看到新生产的订单,这一过程比较的繁琐,而且一天要多次的操作,如何能够简单点,自动获取报表中的数据,然后自动的上传到服务器中去呢?这个就是我的一个任务了。
什么是观察者模式呢?我们先看看看报纸和杂志的订阅是怎么回事:
如果你了解报纸的订阅是怎么回事,其实就知道观察者模式是怎么回事,只是名称不太一样: 出版社改为”主题(Subject)”,订阅者改称为”观察者(Observer)”。
V8引擎本身就是用于Chrome浏览器的JS解释部分,但是Ryan Dahl这哥们,鬼才般的,把这个V8搬到了服务器上,用于做服务器的软件。
Node.js是一个专注于实现高性能Web服务器优化的专家,几经探索,几经挫折后,遇到V8而诞生的项目。
线程是在进程中执行的单位,线程的资源开销相对于进程的开销是相对较少的,所以我们一般创建线程执行,而不是进程执行。 下面我们就来了解一下Java Thread类源码,了解一下线程的控制吧!
在单机系统中,程序以这个单机中的时钟为准,控制时序比较容易,在分布式系统中,每一个节点都有自己的时钟,在通过互相发送消息进行协调时,如果任然依赖时序,就会相对比较难处理,保持每一个节点的时钟完全一致可能是直觉上首先想到的办法,如果能够做到,那么一些分布式系统中的工程将会变得简单很多。
网上介绍HashMap的比较多,但是介绍TreeMap的反而不是那么多,其中的原因我觉得,有两个:1、HashMap的使用场景比较多,2、是相对于HashMap来说,TreeMap所用到的数据结构更为复杂。
ArrayList是我们经常使用的一个类了,是属于List接口的那一块,那么,我们就来看这个类的源码吧!
|
|
从上面我们知道ArrayList是实现了List、RandomAccess ,Cloneable,Serializable接口的一个类。