php框架

RPC服务框架探索之Thrift

我与影子孤独终老i 提交于 2019-11-27 12:58:30
前言 架构服务化后,需要实现一套方便调用各服务的框架,现在开源如日中天,优先会寻找开源实现,如果没有合适自家公司业务的,才会考虑从零开发,尤其是一切以KPI为准绳的公司,谁会跟钱过不去?N个月之前,公司大神就开始调研了,最后选中了Thrift这个RPC服务框架。使用不熟悉的技术,我会感到很恐惧,它就相当于一个黑盒,我对它一无所知,它是如何运转的?出了问题该如何解决?带着一丝不安,查阅了相关技术文档。 RPC 很早之前听说过soap,restful api,rpc之类的服务协议,一直都没有机会深入实践,对它们理解的不够深。它们的目的都是提供本地调用远程服务的能力,只是实现方式不同而已。RPC(remote procedure call)意思是远程过程调用,编码时可以把它当作本地方法一样调用,无需关心内部的实现细节,对于调用方很友好很简单。我查阅资料,发现RPC之类的东西很早很早以前就出现了,存在即是合理的,肯定有它的理由。跟本地调用相比有什么优点缺点呢?根据查阅的资料以及自己的理解总结如下: 优势 1 提高系统吞吐能力 2 业务服务解耦 3 更易构建服务分布式集群 4 基础服务重用更方便 劣势 1 因网络开销方法执行时间更长 2 系统更复杂对运维挑战很大 3 排错成本增加 4 数据序列化消耗CPU资源 现在是移动互联时代,数据无时无刻不在产生着,随着时间的推移,随着用户数的增加

yii框架学习(零)

这一生的挚爱 提交于 2019-11-27 07:30:35
安装yii: 在本地安装前, 要确保PHP配置了环境变量, 通过cmd输入PHP -v 即可检测. 能看到PHP版本号, 则OK. PHP不是内部命令,则需要添加PHP环境变量. 使用composer方式安装, 在Windows上安装composer, 直接去官网下载setup.exe安装程序. 安装的时候, 会配置composer环境变量. 通过composer安装yii. 要确保OpenSSL扩展开启了. 安装前, 先将composer更新站点替换为中国镜像: composer config -g repo.packagist composer https://packagist.phpcomposer.com 安装composer asset插件: composer global require "fxp/composer-asset-plugin:^1.2.0" //这个 ^ 符合是表示版本号高于等于1.2.0 安装asset之后, 安装yii:(如果想要安装在e:/的某个目录下, 使用cmd或者Git(本次使用cmd)进入相应目录, `cd e:/project` , 运行命令) composer create-project --prefer-dist yiisoft/yii2-app-advanced rubbish //这个是高级模板, 可以选择basic

实战jQuery和PHP CodeIgniter表单验证

£可爱£侵袭症+ 提交于 2019-11-27 07:15:54
前言   在Web建站中,表单的合法性验证是十分重要的一个环节,其中包括客户端浏览器的Javascript的验证和服务端的验证。在本文中将指导读者使用jQuery中的validate验证框架实现浏览器端的验证代码编写工作,validate框架是一个十分简单实用的验证框架,能大大提高客户端验证代码的的编写工作,同时,本文使用的是php中十分流行的CodeIgniter框架进行服务端的验证编写工作。本文阅读对象为对jQuery及对PHP CodeIgniter框架有一定认识的读者。   准备工作   我们必须下载CodeIgniter及jQuery,版本如下:   1.CodeIgniter 2.0.2(下载地址: http://codeigniter.com/downloads/ )   2.jQuery 1.6.1 (下载地址: http://code.jquery.com/jquery-1.6.1.min.js )   3.jQuery validate框架,(下载地址: http://bassistance.de/jquery-plugins/jquery-plugin-validation/ )   设置CodeIgniter   我们需要自动加载url并且需要使用CodeIgniter中的form表单助手类,所以我们在应用的autoload.php中的第67行添加如下代码:

PHP高级进阶梳理

删除回忆录丶 提交于 2019-11-27 07:09:36
基础篇 1.深入理解计算机系统 2.现代操作系统 3.C程序设计语言 4.C语言数据结构和算法 5.Unix环境高级编程 6.TCP/IP网络通信详解 7.Java面向对象编程 8.Java编程思想 9.J2EE 技能篇 网络编程 计算机网络基础,TCP/IP协议 《 TCP/IP网络通信详解 》 各种常见的通讯层协议 linux环境下的高级编程 《 Unix环境高级编程 》 现代化PHP PHP开发的事实标准 面向对象设计模式实现和使用 OOP中松耦合、依赖倒置、可替换性、配置化等哲学 持续集成和自动化测试 linux操作系统 linux shell的操作 linux常见命令的用法 docker构建运行镜像 linux的基础安全机制 Swoole Swoole最佳实践 Swoole高性能原理 生产环境中部署和优化 Swoole协程编写高并发服务 框架篇 Hyperf 的使用及实现原理 微服务架构在 Hyperf 内的实现 CSP 协程编程 来源: https://www.cnblogs.com/cnlihao/p/11349982.html

php面试题之五——PHP综合应用(高级部分)

▼魔方 西西 提交于 2019-11-27 05:37:53
文章转载自: http://www.pythonheidong.com/blog/article/2117/ 五、PHP综合应用 1.写出下列服务的用途和默认端口(新浪网技术部) ftp、ssh、http、telnet、https ftp:File Transfer Protocol,文件传输协议,是应用层的协议,它基于传输层,为用户服务,它们负责进行文件的传输,其默认端口是21。 ssh:Secure Shell,安全外壳协议,建立在应用层和传输层基础上的安全协议。SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议,其默端口是22。 http:hypertext transport protocol,超文本传送协议,是一种详细规定了浏览器和万维网服务器之间互相通信的规则,通过因特网传送万维网文档的数据传送协议,其默认端口是80。 telnet:Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力,其默认端口是23。 https:Hypertext Transfer Protocol over Secure Socket Layer,是以安全为目标的HTTP通道,用于安全的HTTP数据传输,它的主要作用可以分为两种: 一种是建立一个信息安全通道,来保证数据传输的安全;

php中级面试题 V1.0

心不动则不痛 提交于 2019-11-27 04:41:04
来源: https://blog.csdn.net/myhuashengmi/article/details/51866536 1 、 SESSION 保存在服务器的哪里? 答:通过 php.ini 指定,可存在指定目录的文件中或内存中,或数据库中! (存储在服务器上的 php 指定的目录中的( session.save_path )的位置进行的存放) 2 、服务端是如何获取客户端的 cookie? 答:服务器每次处理请求的进候都可以抓取头信息的 cookie 并设置返回 , 3 、如何实现 SESSION 共享,共享的原理是什么? 答:配置主从数据库,将 SESSION 存入主数据库中,常见的做法还有在各服务器端安装 MEMCAHCE, 将 SESSION 存入各 MEMCACHE 中, 4 、请大致说出 LVS 搭建的过程,文件共享原理是什么? 5 、网络共享服务器上传数据是向一台服务器上传?还是多台?如何实现同步 ? 6 、说出你所知道的数据库设计范式?常用的建模工具是什么?( mysql 建模工具) 答: 1NF: 每一条满足原子性,不可以分割; 2NF: 每一条记录要满足唯一性, 3NF: 字段不冗余,有时我们还需要反三范式,常用的建模工具: phpMyAdmin,navicat for mysql,DOS 命令行; 7 、如果你是项目经理

细说PHP 高洛峰文字版PDF下载

◇◆丶佛笑我妖孽 提交于 2019-11-27 02:54:41
下载地址: http://gqylpy/di/301 《细说PHP(第2版)》共六个部分,分为30个章节,每一章都是PHP独立知识点的总结。内容涵盖了动态网站开发的前台技术(HTML+CSS)、PHP编程语言的语法、PHP的常用功能模块和实用技巧、MySQL数据库的设计与应用、PHP面向对象的程序设计思想、数据库抽象层PDO、Smarty模板技术、Web开发的设计模式、自定义框架BroPHP、Web项目开发整个流程等目前PHP开发中最主流的技术。每一章中都有大量的实用示例,以及详尽的注释,加速读者的理解和学习,也为每章的技术点设置了大量的自测试题。最后以一个比较完整的、采用面向对象思想,以及通过MVC模式设计,并结合Smarty模板,基于BroPHP框架的CMS系统为案例,详细介绍了Web系统开发从设计到部署的各个细节,便于更好地进行开发实践。 来源: https://www.cnblogs.com/gqy02/p/11339753.html

laravel框架中实现代码追踪(PHPstorm IDE)

自闭症网瘾萝莉.ら 提交于 2019-11-27 02:24:17
https://blog.csdn.net/u013957017/article/details/88573529 1、在phpstorm— file— settings — plugins – 搜索Laravel Plugin — 安装 2、安装ide-helper插件 (1) composer require barryvdh/laravel-ide-helper 如果安装失败的话先执行下 composer update 命令即可。 (2)分别执行下面三个命令 php artisan ide-helper:eloquent php artisan ide-helper:generate php artisan ide-helper:meta 3、代码有提示并且可以反向追踪,也可以直接跳转到使用app方法加载类的方法。 来源: https://blog.csdn.net/qq_40414209/article/details/99288285

php自学提升进阶路线

允我心安 提交于 2019-11-27 01:00:23
一、实战演练 熟悉语法&api -> 阅读zend、ci、wordpress源码 -> 用PHP独立开发项目 -> 深入了解PHP引擎实现细节、扩展编写、性能优化等 (1周)HTML+CSS HTML5+CSS3 (2-3天)留言板或记事本,(增删改查,数组函数数据库函数) (7天)bbs或企业网站,(模板、分页、权限)phpchina的高手PHP高手带路--问题汇总解答以及PHP手册 (1个月)学习discuz学习外国的开源程序(zencert Joomla drupal).学习phpchina上的精华知识。 (1个月)深入学习zf框架(增删改查,权限控制,前端模板页面等) (长期总结)对自己做过的小项目进行总结,用面向对象思想,对结构优化。 看开源的框架源码(这步请注意找一些比较小巧的开源框架如 CI,Slim ),增强对 MVC 的理解 更加深入的系统的学习(MySQL Linux C 语言 javascript html css redis 等) 最紧要实战: (2周)3个站(至少20个美工页面)psd to html 切制练习。 (1周)jquery实战演习 (1月)用zf框架,开发模块,达到灵活掌握 必须掌握的知识点: 数据库必须熟练掌握 mysql & sqlserver,同时必须熟练zendstdio的操作。 熟练进行phpmyadmin的操作。 adodb

PHP 性能分析第三篇: 性能调优实战

时光怂恿深爱的人放手 提交于 2019-11-26 23:51:16
注意:本文是我们的 PHP 性能分析系列的第三篇,点此阅读 PHP 性能分析第一篇: XHProf & XHGui 介绍 ,或 PHP 性能分析第二篇: 深入研究 XHGui 。 在本系列的 第一篇 中,我们介绍了 XHProf 。而在 第二篇 中,我们深入研究了 XHGui UI, 现在最后一篇,让我们把 XHProf /XHGui 的知识用到工作中! ##性能调优 不用运行的代码才是绝好的代码。其他只是好的代码。所以,性能调优时,最好的选择是首先确保运行尽可能少的代码。 OpCode 缓存 首先,最快且最简单的选择是启用 OpCode 缓存。OpCode 缓存的更多信息可以在 这里 找到。 在上图,我们看到启用 Zend OpCache 后发生的情况。最后一行是我们的基准,也即没有启用缓存的情况。 在中间行,我们看到较小的性能提升,以及内存使用量的大幅减少。小的性能提升(很可能)来自 Zend OpCache 优化,而非 OpCode 缓存。 第一行是优化和 OpCode 缓存后结果,我们看到很大的性能提升。 现在,我们看看 APC 之前和之后的变化。如上图所示,跟 Zend OpCache 相比,随着缓存的建立,我们看到初始(中间行)请求的性能下降,在消耗时长与内存使用量方面的表现都明显下降。 接着,随之 opcode 缓存的建立,我们看到类似的性能提升。 内容缓存