手记

数据结构、linux

linux:
lamp情况的搭建:
1    安装设想机能,
2    安装linux  centOS操作系统,参照<br>       重视是 GNONE桌面,不然只可以命令行操作;<br> linux 下的下令:
终端下:reboot  重启;

apache 与ngix比较:

ngix :质量好  使用的能源少,援救更加的多的面世连接,展示越来越高的频率,那一点使ngix受到虚构主机提供商的迎接。适合在高连接出现的状态下,ngix安装极度轻便,配置文件很简短,ngix运行很轻易,ngix静态管理品质比Apaches高3倍以上,ngix处理静态文件好,消耗内部存款和储蓄器少,但Apaches还是脚下的主流,有数不尽增多的性状。ngix的负载技艺比Apaches高非常多,前端ngix抗并发,后端Apaches集群,同盟的不错。ngix适合处理静态和反向,Apaches适合管理动态。ngix 本人正是二个反向管理服务器,ngix帮助7层负载均衡。

Apaches:不求品质,牢固性好 rewrite庞大,bug少,超牢固,种种功效模块完成的好,可安顿项多,配置相对复杂,Apaches对php帮衬相比轻巧,ngix需求相配其余后端使用,Apaches的组件比ngix多。ngix是很不利的前端服务器,负载质量很好,Apaches对php语言援救的很好,别的Apaches有强有力的协助互联网,发展时间越来越久,bug少,不过Apaches不辅助多为重处理负荷,所以提议选择ngix做前端,后端用Apaches ,大型网址提议用ngix自带的集群效应。对于ngix  配置文件很轻巧,正则配置让多数事情变得简单运维作用高,占用能源少,代理效用庞大,很符合做前端响应服务器;Apaches在管理动态上有优势,ngix并发性比较好,cpu内部存款和储蓄器占用低,要是rewrite频仍,选取Apaches。

数据结构:
队列的选拔:银行照旧移动等客服电话,客服人员与客户比较总是少数,在具有的客服人士都没空的景况下,客户会被必要等待,直到某些客服职员空下来,能力让开头等待的客户接通电话,这里将享有当前拨打客服电话的客户开始展览了排队管理。在操作系统和客户系统中,都以运用了一种数据结构来促成刚才提到的先进先出的排队作用,那正是队列。队列在程序设计中应用的相当频繁,再如:用键盘举行各类字母或数字的输入,到显示器上如记事本软件上的出口,正是队列的特出应用。

线性表有顺序存款和储蓄和链式存储,栈是线性表,所以有那三种存款和储蓄方式。队列作为一种新鲜的线性表,同样存在那二种存储方式。
二叉树:折半物色,对于这种在某些阶段都以二种结果的场所,比方开关、0和1、真假、上下、对错、正面与反面;都适合用树状结构来建立模型,这种树是一种相当特殊的树状结构叫做二叉树。
一心二叉树的论断格局:望着树的暗意图,心中默默给各种节点遵照满二叉树的结构逐层顺序编号,倘使编号现身空挡,正是一连不上,就认证不是一心二叉树,否则便是。
满二叉树:若是具有支行节点都留存左子树和右子树,并且具备叶子都在一样层上,那样的二叉树称为满二叉树。

angularjs 是贰个JavaScript框架,AngularJS 指令是扩展的html属性,带有前缀ng-ng-app 指令初始化叁个AngularJS应用程序ng-init 指令初叶化应用程序数据ng-model 指令把成分值绑定到应用程序表明式中增多过滤器 过滤器能够透过贰个管道字符| 和二个过滤器增添到表达式中。var app=angular.module('myApp',[]);app.controller('customersCtrl',function($scope,$location){$scope.myUrl=$location.absUrl();//$location 服务,它能够回来当前页面包车型客车U大切诺基L地址。});$http是AngularJS应用中最常用的劳务,服务向服务器发送必要,应用响应服务器传送过来的数量。AngularJS会一贯监察和控制应用,处监护人件变化,AngularJS使用$location服务比选拔window.location对象越来越好。php ajax跨域问题一下子就解决了:客户端的域名是 client.runoob.com  伏乞的域名是 server.runoob.com间接行使ajax访问,会报错  通过设置Access-Control-Allow-Origin来兑现跨域1 钦命某域名( $origin=isset($_SERVER['HTTP_ORIGIN'])?$_SERVER['HTTP_ORIGIN']:""; $allow_origin=array( "", "" ); if(in_array($origin,$allow_origin)){header("Access-Control-Allow-Origin:".$origin); } 3 允许所有域名访谈  在 header("Access-Control-Allow-Origin:*"); 能够运用AngularJS的angular.module函数来成立模块

var app=angular.module("myApp",[]);在我们的实例中,全体的AngularJS库都在html文书档案的头顶载入; 对于html应用程序,平时建议把富有的剧本都放置在body成分的最后面部分,那会坚实网页加载速度,因为html加载不受制于脚本加载 AngularJS在head成分中被加载,因为对angular.module的调用只好在库加载实现后才具进行;使用AngularJS,首先载入文件,AngularJS通过大气的下令让您可见在模型和html成分之间做涉嫌,他们都是以ng-早先的质量,何况能加多到任何因素上,要是您想使用AngularJS,将要为种种页面包涵二个最根本的特性  ng-app  这几个因素应该被增添到能够富含剩余页面包车型地铁因素上,如body只怕外围的div成分上。当页面加载时,AngularJS会搜索那个天性,何况会自动评估在子元素上见到的享有指令。AngularJS优点:1 模板成效庞大丰盛,并且是申明式的,自带了丰裕Angular指令;2 是三个相比完善的前端MV框架,包罗模板,数据双向绑定,路由,模块化,服务,过滤器,注重注入等全数功效;3. 自定义Directive,比jQuery插件还心灵手巧,然而急需深远摸底Directive的片段特点,轻松的包装轻松,复杂一点官方并未有提供详实的牵线文书档案,我们得以通过阅读源代码来找到有个别大家须要的东西,如:在directive使用 $parse;4. ng模块化相当大胆的引进了Java的片段事物(重视注入),能够很轻巧的写出可复用的代码,对于快速开拓的团伙来说特别有救助,大家的门类从上线到日前,UI变化非常的大,在物色中迭代产品,不过js的代码基本上相当少改变。5. 补偿:Angular帮助单元测量试验和e2e-testing。优点双向数据绑定,明显的分支,充分的内置指令和工具函数适合部分小型的并行不是那么复杂的单页应用的开支tar -zxvf apr-1.4.2.tar.gz //unzip -o apr-1.4.2.zipcs apr-1.4.2./configure --prefix=/usr/local/aprmake //编写翻译make install  //安装./apachectl -k start ./apachectl -k restart ./apachectl -k stop解压 tar -zxvf httpd-2.2.22.tart.gz成立文件夹 mkdir /usr/local/apache2//安装Apaches  php  mysql下载php 解压  tar -zxvf php-5.3.16.tar.gz构建文件夹 mkdir /usr/local/php配置 make  编写翻译make test  测量检验编译make install  安装重启 Apaches安装mysql1 下载 2 解压 tar -zxvf mysql-5.1.65.tar.gz3 建设构造文件夹 mkdir /usr/local/mysql4 配置 ./configure --prefix=/usr/local/mysql/yum list|grep ncursesyum -y install ncurses -develyum install ncurses -devel5 编译 make6 安装 make install7 运转 cd /usr/local/mysql/bin sudo ./mysql_install_db --user=root8 为根用户创立密码9 测量检验魔术点子:__autoload 实例化二个对象时  固然对应的类不设有 则该格局被调用__sleep serialize 在此之前被调用__wakeup unserialize 时被调用__construct 构造函数 实例化对象时被调用__destruct 析构函数 对象被灭绝时被调用__get 获取对象的天性__set 设置对象的质量__isset 检查实验对象的本性是或不是存在__unset __clone 克隆对象时使用$_GLOBALS['X']global $x=1;1strstr('gaofei@163.com',1);substr('gaofei@163.com',7);explode("@",$str); arsort() explode(',',$str); implode(',',$str);array_push() array_pop() array_unshift($arr,'');linux 解释常用命令和意义:ls 列目录cp 复制rm 删除cat 将文件的原委打字与印刷到正式输出mkdir 建构目录dd 切换目录ps 查看进程top 查看机器使用状态df 检查磁盘空间占用景况find 在钦定路线下搜寻内定文件grep 过滤文本cd 改动当前专门的学问目录mount 挂载/卸载钦点的文件系统ifconfig 配置网络或显示当前互连网接口状态telnet 远程登陆wc 总结钦定文件中的字节数 字数 行数 并将总结结果突显输出grep 过滤文本 依照钦命的字符串 对文本的每一行开始展览搜寻 倘诺找到 则输出该行内容chgrp 更换文件所属组chgmode 更换文件的权力cat 将文件的剧情打字与印刷到正式输出df  检查测量检验磁盘空间占用情形find  在钦定的渠道下搜寻钦点文件mv 文件/目录改名 或更换存储地点ps 展现系统经过在须臾间的周转情况top  该命令提供了实时对系统管理器状态的监督检查,它亦可实时彰显系统中种种进度的财富占用景况。该命令能够依据对cpu内部存款和储蓄器使用和实践时间对系统职责进度张开排序展现,同临时候还足以由此交互式命令举行设定突显//使对象足以像数组同样进行foreach循环  供给质量是个体的 iterator 格局实现 写一类达成iterator接口class Test implements Iterator{private $item=array('id'=>1,'name'=>'php');public function rewind(){reset($this->item);}public function current(){return current($this->item);}public function key(){return key($this->item);}public function next(){return next($this->item);}public function valid(){return ($this->current()!==false);}}$t=new Test();foreach($t as $k=>$v){echo $k."-->".$v."

";}//用php完毕二个双向队列 class Deque{private $queue=array();public function addFirst($item){return array_unshift($this->queue, $item);}public function addLast($item){return array_push($this->queue,$item);}public function removeFirst(){return array_shift($this->queue);}public function removeLast(){return array_pop($this->queue);}}//使用冒泡排序法对一组数据实行排序  10,2,36,14,10,25,23,85,99,45function Bubble_test_qt($arr){$count=count($arr);for($i=0;$i<$count;$i++){//外层循环for($j=0;$j<$count-$i-1;$j++){if($arr[$j]>$arr[$j+1]){$temp=$arr[$j];$arr[$j]=$arr[$j+1];$arr[$j+1]=$temp;}}}return $arr;}$test_arr=array(10,2,36,14,10,25,23,85,99,45);var_dump(Bubble_test_qt($test_arr));//数到m  踢出去的  最终的是猴王function josephus($n,$m){$r=0;for($i=2;$i<=$n;$i++){$r=($r+$m)%$i;}return $r+1;}var_dump(josephus(3,3));//2//顺序查找function seq_sch($array,$n,$k){$array[$n]=$k;for($i=0;$i<$n;$i++){if($array[$i]==$k){break;}}if($i<$n){return $i;}else {return -1;}}//二分查找  从数组中搜索某些成分function bin_sch($array,$low,$high,$k){if($low<$high){$mid=intval(($low+$high)/2);if($array[$mid]==$k){return $mid;}else if($k<$array[$mid]){return bin_sch($array,$low,$mid-1,$k);}else{return bin_sch($array,$mid+1,$high,$k);}}return -1;}

tar -zxvf apr-1.4.2.tar.gz //unzip -o apr-1.4.2.zipcs apr-1.4.2./configure --prefix=/usr/local/aprmake //编写翻译make install  //安装./apachectl -k start ./apachectl -k restart ./apachectl -k stop解压 tar -zxvf httpd-2.2.22.tart.gz起家文件夹 mkdir /usr/local/apache2//安装Apaches  php  mysql下载php 解压  tar -zxvf php-5.3.16.tar.gz创设文件夹 mkdir /usr/local/php配置 make  编写翻译make test  测量检验编写翻译make install  安装重启 Apaches安装mysql1 下载 2 解压 tar -zxvf mysql-5.1.65.tar.gz3 创立文件夹 mkdir /usr/local/mysql4 配置 ./configure --prefix=/usr/local/mysql/yum list|grep ncursesyum -y install ncurses -develyum install ncurses -devel5 编写翻译 make6 安装 make install7 运行 cd /usr/local/mysql/bin sudo ./mysql_install_db --user=root8 为根用户成立密码9 测验魔术点子:__autoload 实例化二个对象时  若是对应的类不设有 则该格局被调用__sleep serialize 从前被调用__wakeup unserialize 时被调用__construct 构造函数 实例化对象时被调用__destruct 析构函数 对象被灭绝时被调用__get 获取对象的性格__set 设置对象的品质__isset 检查评定对象的天性是还是不是留存__unset __clone 克隆对象时使用$_GLOBALS['X']global $x=1;1strstr('gaofei@163.com',1);substr('gaofei@163.com',7);explode("@",$str); arsort() explode(',',$str); implode(',',$str);array_push() array_pop() array_unshift($arr,'');linux 解释常用命令和效应:ls 列目录cp 复制rm 删除cat 将文件的剧情打字与印刷到正规输出mkdir 创设目录dd 切换目录ps 查看进程top 查看机器使用景况df 检查磁盘空间占用情况find 在内定路径下搜寻钦点文件grep 过滤文本cd 改变当前专门的学问目录mount 挂载/卸载钦赐的文件系统ifconfig 配置互联网或展现当前网络接口状态telnet 远程登陆wc 总计内定文件中的字节数 字数 行数 并将总结结果展现输出grep 过滤文本 依据内定的字符串 对文件的每一行开展搜寻 借使找到 则输出该行内容chgrp 退换文件所属组chgmode 退换文件的权能cat 将文件的源委打印到正式输出df  检查评定磁盘空间占用意况find  在钦定的不二等秘书技下搜寻钦定文件mv 文件/目录改名 或改动存款和储蓄地点ps 显示系统经过在须臾间的运作情形top  该命令提供了实时对系统管理器状态的监察,它亦可实时展现系统中各类进度的财富占用意况。该命令能够根据对cpu内存使用和实行时间对系统任务进程张开排序显示,同临时间还是能够透过交互式命令进行设定突显//使对象能够像数组同样举行foreach循环  须要质量是个人的 iterator 格局完结 写一类完毕iterator接口class Test implements Iterator{private $item=array('id'=>1,'name'=>'php');public function rewind(){reset($this->item);}public function current(){return current($this->item);}public function key(){return key($this->item);}public function next(){return next($this->item);}public function valid(){return ($this->current()!==false);}}$t=new Test();foreach($t as $k=>$v){echo $k."-->".$v."

";}//用php实现二个双向队列 class Deque{private $queue=array();public function addFirst($item){return array_unshift($this->queue, $item);}public function addLast($item){return array_push($this->queue,$item);}public function removeFirst(){return array_shift($this->queue);}public function removeLast(){return array_pop($this->queue);}}//使用冒泡排序法对一组数据开始展览排序  10,2,36,14,10,25,23,85,99,45function Bubble_test_qt($arr){$count=count($arr);for($i=0;$i<$count;$i++){//外层循环for($j=0;$j<$count-$i-1;$j++){if($arr[$j]>$arr[$j+1]){$temp=$arr[$j];$arr[$j]=$arr[$j+1];$arr[$j+1]=$temp;}}}return $arr;}$test_arr=array(10,2,36,14,10,25,23,85,99,45);var_dump(Bubble_test_qt($test_arr));//数到m  踢出去的  最终的是猴王function josephus($n,$m){$r=0;for($i=2;$i<=$n;$i++){$r=($r+$m)%$i;}return $r+1;}var_dump(josephus(3,3));//2//顺序查找function seq_sch($array,$n,$k){$array[$n]=$k;for($i=0;$i<$n;$i++){if($array[$i]==$k){break;}}if($i<$n){return $i;}else {return -1;}}//二分查找  从数组中找找某些成分function bin_sch($array,$low,$high,$k){if($low<$high){$mid=intval(($low+$high)/2);if($array[$mid]==$k){return $mid;}else if($k<$array[$mid]){return bin_sch($array,$low,$mid-1,$k);}else{return bin_sch($array,$mid+1,$high,$k);}}return -1;}http:  超文本传送协议 是一种详细规定了浏览器和万维网服务器之间相互通讯的平整, 通过因特网传送万维网文书档案的多少传送协议 暗中同意的端口是80ftp 文件传输协议 应用层的磋商 基于传输层 为用户服务 担任实行理文件件的传导 默许端口为21 ssh: Secure Shell 安全外壳协议 创建在应用层和传输层基础上的天水协议,SSH前段时间可比保障转为远程登录会话和任何互联网服务提供安全性的商业事务 默许端口22telnet: 是Internet远程登入服务的典型协商谈要紧格局它为用户提供连在本地Computer上到位远程主机专门的学业的本事 暗中同意端口23xdebug 能够检查php脚本的实行效能(常常是本子实践时间)mysql 使用explain深入分析查询 数据库sql的频率(经常是数据库query时间) 对于大流量的网址  接纳什么艺术来解决访谈量难点 1 确认服务器硬件能或不可能扶助当前的流量2 优化数据库的寻访:能够从页面静态化、memcache缓存和mysql优化伊始3 禁止外部盗链 4 调控大文件的下载5 使用多台主机完结分流 集群6 使用流量深入分析软件进行辨析总括谷歌和百度php是一种跨平台的服务器端的嵌入式脚本语言 它大批量的借用c java 和perl语言的语法 并整合本人的风味 使web开垦者能够快速的写出动态变化页面。辅助大许多数据库。如何加速页面包车型地铁加载速度:要用到服务器财富时才打开及时关门服务器能源 数据库加多索引 页面可生成静态图片等大文件单独服务器 使用代码优化学工业具//创制目录function mkdir_test($filename){if(is_dir($filename)){echo "ok";}else{if(mkdir($pathname,777,true)){echo "okk";}}}//smarty :速度快 缓存手艺 插件机制 壮大的显现逻辑  编写翻译型打开php.ini中的safe_mode 会影响什么函数 :用户输入输出函数 fopen() file() require() 只可以用于调用那个函数有平等脚本的具有者mysql 服务器全数的用户名必须与调用mysql_connect()的文件的具有者用户名一样php的杂质回收机制:php可以活动进行内部存款和储蓄器处理,清除不再要求的对象,php使用了引用计数reference counting 这种单纯的污源回收机制。各个对象都内含三个引用计数器,各种reference连接到对象,计数器加1,当referencel离开生存空间或被设为null 计数器-1,当有些对象的援用计数器为0 php 知道您将不再需求选择这一个目的释放其所占的内部存款和储蓄器空间。/* * 确认保证多少个进程同时写入同三个文件成功 */function test1(){$fp=fopen("test.txt","w+");if(flock($fp,LOCK_EX)){fwrite($fp, '写入的原委');flock($fp,LOCK_UN);}else{echo "file is locking";}fclose($fp);}对mvc的认知:由模型 视图 调控器实现的应用程序;由模型发生要贯彻的功能到调整器  调整器接收组织效果传递给视图//进程与线程/* * 遍历文件夹下的具有文件和子文件夹 先剖断是或不是一个目录 读取目录 假若包含子文件夹 保存  继续递归读取  不满含子文件夹 保存到一个数组 */function test2($dir){$files=array();if(is_dir($dir)){if($handle=opendir($dir)){while(($file=readdir($handle))!==false){if($file!='.'&&$file!='..'){if(is_dir($dir."/".$file)){$files[$file]=test2($dir."/".$file);}else{$files[]=$dir."/".$file;}}}closedir($handle);return $files;}}}

进度和线程:

经过是享有一定独立成效的次序 关于某些数据会集上的贰遍运营活动 进度是系统开展能源分配和调节的八个独自单位

线程是进度的一个实体 是cpu调节和分担的主导单位 它是比进度更加小的能独立运营的主题单位

经过和线程 的重大不一样是 在于他们是见仁见智 的操作系统能源管理章程。进度有独立的地方空间,二个经过崩溃后

在尊崇格局下不会对别的进程产生影响。而线程只是多少个进度中的差别试行路线,线程有友好的客栈和有些变量。

但线程之间向来不单身的地方空间,二个线程死掉就万分一切经过死掉,所以多进程的程序要比八线程的程序健壮,

但在切换进度时,开支能源很大,功效差一点, 但对于部分渴求同一时候开始展览同一时候又要分享有个别变量的面世操作,

只可以用线程,无法用进度。

用户在网址表单提交数据的时候, 为了防备脚本攻击 php端接收数据的时候  能够对用户输入的数目举行转义。

如 htmlspecailchars($_POST['name']);

memcached 把装有的数据保存在内部存储器中,采纳hash表的办法,每条数据由key和value组成,种种Key是并世无双的,

当要走访某些值的时候先依照找到值,然后回到结果,memcache采取LRU算法来主键把过期数据清除掉。

3台web服务器,两台mysql数据库服务器 选用主从同步的秘技缓和数据库负载,Master/Slaver,web服务器能够

整合memcache缓存来裁减负荷,同期3台web服务器内容一致 能够使用DNS轮询的办法开始展览负载平衡

ajax的干活原理是一个页面的钦命地方能够加载另贰个页面全部的输出内容,那样就实现了一个静态页面也能获得到

数据库中的重临数据音讯了。所以ajax本事完结了四个静态网页在不刷新整个页面包车型地铁情事下与服务器通讯,裁减了用户

等候时间,同时也为此减弱了互连网流量,加强了客户体验的投机程度。

ajax宗旨才具 xmlhttprequest 它是JavaScript中的三个目的,

ajax的长处 缓慢解决了劳务器端的承受,将部分之前由服务器担负的办事转义到客户端实践,利用客户端闲置的能源拓展管理;

在局地刷新的气象下更新页面 扩大了页面反应速度 使用户体验更温馨

短处 不实惠seo推广优化 因为寻觅引擎无法直接访谈到ajax供给的源委。

在选取ajax时,涉及到数码传输,就是将数据从服务器重回到客户端,服务器端和客户端独家使用分歧的步子

语言来拍卖数据,那就供给一种通用的多少格式,xml和json常用 json比xml更轻巧.。


0人推荐
随时随地看视频
慕课网APP