搜索
首页后端开发php教程技术走出去看看开阔思维,不要做井底之蛙_PHP教程

突然写个感悟:感觉有些公司不能呆久了。呆久了,技术得不到提升。过去的经历存在大脑数据库,人做判断是根据大脑数据库已经存储的信息,所以思维模式容易受到过去的影响。

 

做phper,想提升技术,两类公司不能呆久了:一类是网站建设公司。二类是接项目单子为盈利的公司。像软件外包公司就是的。

1,关于网站建设公司。

我以前去一个公司面试的时候,是一个网站建设公司。我当面对老板说,我说公司可以呆,但是呆久了。技术很难得到提升。浪费了提升技术水平的机会。

我与a同学也劝过一个同学,你以前在这种公司呆过,就不要继续找这方面工作了,会导致你技术难以得到质的提升。找那种网站运营的公司去。这样技术提升快。

网站建设公司,公司以帮人建设网站、网站策划营销作为盈利来源。建设一个网站,一般1000多块钱,多的几千。从技术角度,做这类网站,写代码不需要考虑什么性能,本来这种网站的都是一些简单的功能。给顾客以实现功能为主。至于什么代码扩展性,代码性能。sql优化,完全不需要考虑。一个是因为接的这种网站功能,访问量都是很小的,更谈不上什么并发访问。比如,网站建设公司接一个单,帮一家大公司做一个内部办公方面的系统,既然是内部应用的,一般是员工使用提高效率。访问量很少。一个公司有几千个员工(这种公司已经很大规模的了),内部系统对外人一般不开发。预算几千个去访问已经很多了。同时一千个员工并发访问可能性太小了,关于pv,不像社交类的网站,系统的用户每天都去上网站点击这点击那的,服务器,数据库的压力确实不小。这类系统,因为并发访问和访问量很少,在设计系统的时候,谈不上考虑服务器性能,数据库性能,你可以去考虑,但我觉得至少是不需要去考虑的。没意义。sql语句按照最简单的吧。不需要优化。系统里面的功能该有的都实现了,就ok了。纯粹是考虑代码的熟练度。

 

互联网系统,是开放性系统,开发对所有人访问,访问数量具有不确定性。暴露在外界。

作为对外提供服务,那么必须要做到网站提供服务稳定,不间断。如果用户在用网站过程中,程序报错,网站不稳定,用户会流失掉。

上面两个因素决定了,所需要涉及到的技术更加复杂。

 

如果是自己公司运营的网站,你要考虑的东西是方方面面的,1、你要考虑服务器安全吧。2、因为是对所有用户是开放的(你总希望访问的用户越多越好,这样产生商业价值)。要考虑这个系统承载访问量大的时候怎么处理 3、数据库是否扛得住。服务器要选择什么样子的。

web应用的特点,针对所有用户都是开放访问,意味数据量更多,并发访问多。

 

 

php语言的优势和特点,就是用来做web开发。所以作为web开发的高手侧重是,高性能网站架构部署、如何提升网站的用户访问速度、数据库大数据量如何处理(数据库性能优化,sql优化、数据库架构部署、数据切分等)、如何应对大并发访问等方面。

做传统的软件开发,转型向web开发后,侧重点不同的。比如,以前在某个公司,该技术经理以前是做c++开发的。呆的是那种外资软件公司,所以他们开发东西流程都是很规范的。一个项目一个项目的开发。但是到了做web应用的公司后,他的技能就显得捉襟见肘。因为我们的手机网站当时访问量很大的(有钱可以投广告),每天的订单数量维持在3k-4k。访问量大,数据处理量也大。数据库时不时的崩溃。尤其是涉及到后台需要给营销、市场部门做数据统计。这个经常不小心点击就把后台给卡死了(数据量太多了,功能没规划好,很耗费数据库性能),所以很多统计功能,确实是只能勉强用用,市场部没事哪敢去后台点击。

同时,还遇到前台访问数据速度不够快。当然是老板觉得竞争对手的怎么那么快。但是技术经理折腾一天,还加班,都没搞清楚性能瓶颈在哪里(以前我还总结要找瓶颈才能解决速度问题,http://www.cnblogs.com/wangtao_20/archive/2012/05/10/2493899.html),所以试很多东西,都没解决好。

实际上,web开发,如果想提升网站性能,要懂些磁盘知识,服务器硬件(比如内存,cpu、节点如何扩展)知识。与传统的软件开发所侧重的知识点是不同的。

每种技术都有其自身的特点,做php开发与做asp.net开发,同样是语言,侧重点不同。

做php,我感觉跟asp(或者asp.net)开发也是很大不同,asp.net微软公司强大,很多性能,好的工具都已经帮你解决了。帮做.net开发的省去很多事情。另外一点,由于windows系列本身微软公司是避源的,不开发。所以里面结构只有微软公司最清楚,封闭的东西总是有瓶颈限制很难进一步扩展的。所以假如你的网站访问量达到很大的时候,靠自己技术解决不了的,必须改动底层或许提升服务性能,因为微软出于商业考虑使得系统的封闭性,你不可能也没那个能力去修改底层的东西,此时是已经摸到天花板了,一般是向微软花钱买服务,那是微软的要做的,并非.net程序员要考虑的。京东商城数据量那么大,就是这样子的。它有钱嘛。

linux环境下,整个操作系统不仅是免费开源,而且你觉得性能遇到瓶颈了,你可以自己在上面做定制开发。大家的智慧总是要比微软公司一家的智慧要多。

所以,以php语言来做web开发,要了解和学习的东西要求更多。一般php+mysql是中小型公司选择最多的(大公司有钱就去用oracle,比如阿里巴巴主要的数据库还是oracle,他们用mysql也有,毕竟mysql免费,通过很多的mysql节点集群产生大数据量存储效果)。所以,想提升网站的性能,对mysql的数据库不是局限于怎么用。而是怎么优化提高mysql的性能。比如:主从结构,分布式mysql结构、数据切分等。

 

 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/440194.htmlTechArticle突然写个感悟:感觉有些公司不能呆久了。呆久了,技术得不到提升。过去的经历存在大脑数据库,人做判断是根据大脑数据库已经存储的...
声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
PHP与Python:了解差异PHP与Python:了解差异Apr 11, 2025 am 12:15 AM

PHP和Python各有优势,选择应基于项目需求。1.PHP适合web开发,语法简单,执行效率高。2.Python适用于数据科学和机器学习,语法简洁,库丰富。

php:死亡还是简单地适应?php:死亡还是简单地适应?Apr 11, 2025 am 12:13 AM

PHP不是在消亡,而是在不断适应和进化。1)PHP从1994年起经历多次版本迭代,适应新技术趋势。2)目前广泛应用于电子商务、内容管理系统等领域。3)PHP8引入JIT编译器等功能,提升性能和现代化。4)使用OPcache和遵循PSR-12标准可优化性能和代码质量。

PHP的未来:改编和创新PHP的未来:改编和创新Apr 11, 2025 am 12:01 AM

PHP的未来将通过适应新技术趋势和引入创新特性来实现:1)适应云计算、容器化和微服务架构,支持Docker和Kubernetes;2)引入JIT编译器和枚举类型,提升性能和数据处理效率;3)持续优化性能和推广最佳实践。

您什么时候使用特质与PHP中的抽象类或接口?您什么时候使用特质与PHP中的抽象类或接口?Apr 10, 2025 am 09:39 AM

在PHP中,trait适用于需要方法复用但不适合使用继承的情况。1)trait允许在类中复用方法,避免多重继承复杂性。2)使用trait时需注意方法冲突,可通过insteadof和as关键字解决。3)应避免过度使用trait,保持其单一职责,以优化性能和提高代码可维护性。

什么是依赖性注入容器(DIC),为什么在PHP中使用一个?什么是依赖性注入容器(DIC),为什么在PHP中使用一个?Apr 10, 2025 am 09:38 AM

依赖注入容器(DIC)是一种管理和提供对象依赖关系的工具,用于PHP项目中。DIC的主要好处包括:1.解耦,使组件独立,代码易维护和测试;2.灵活性,易替换或修改依赖关系;3.可测试性,方便注入mock对象进行单元测试。

与常规PHP阵列相比,解释SPL SplfixedArray及其性能特征。与常规PHP阵列相比,解释SPL SplfixedArray及其性能特征。Apr 10, 2025 am 09:37 AM

SplFixedArray在PHP中是一种固定大小的数组,适用于需要高性能和低内存使用量的场景。1)它在创建时需指定大小,避免动态调整带来的开销。2)基于C语言数组,直接操作内存,访问速度快。3)适合大规模数据处理和内存敏感环境,但需谨慎使用,因其大小固定。

PHP如何安全地上载文件?PHP如何安全地上载文件?Apr 10, 2025 am 09:37 AM

PHP通过$\_FILES变量处理文件上传,确保安全性的方法包括:1.检查上传错误,2.验证文件类型和大小,3.防止文件覆盖,4.移动文件到永久存储位置。

什么是无效的合并操作员(??)和无效分配运算符(?? =)?什么是无效的合并操作员(??)和无效分配运算符(?? =)?Apr 10, 2025 am 09:33 AM

JavaScript中处理空值可以使用NullCoalescingOperator(??)和NullCoalescingAssignmentOperator(??=)。1.??返回第一个非null或非undefined的操作数。2.??=将变量赋值为右操作数的值,但前提是该变量为null或undefined。这些操作符简化了代码逻辑,提高了可读性和性能。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )专业的PHP集成开发工具

SecLists

SecLists

SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。