前期做应用不特别复杂的网站,要注意以下几点
2021-01-04 16:38:58 阅读(185) 评论(0)
作为一名技术从业者,经过十年的访问,我发现一些知识需要在世界各地阅读才能整理出线索。让我们从一开始就一步一步地谈谈系统点。一个每天访问数千个小网站到每天访问100万或200万个小网站,我们如何才能让它顺利度过这个阶段,不要在技术上有先天性的不足,写给一些技术人员和不懂技术的企业家。了解互联网的人都有自己的想法,有些人把想法付诸实践,做一个网站,然后开始运营。事实上,从纯网站技术的角度来看,由于开源模式的发展,建立一个小网站既简单又便宜。当访问量达到一定数量级时,成本开始飙升,问题开始出现。由于带宽的增加、*件的扩展和人员扩张带来的成本增加是显而易见的,相当大一部分成本是由代码重构、架构重构甚至底层开发语言更换引起的。最糟糕的是数据丢失。经过几年的努力,他们一夜之间回到了创业之前。降低成本就是增加利润。很多事情,我们一开始就可以避免,先打好基础,以后可以节省很多精力,少操很多心。假设你是一个参与创业的技术人员,目前你很穷,你必须自己做一切,自己付钱。在早期阶段,你必须制作一个应用程序不是特别复杂的网站,所以你应该注意以下几点:首先,一般来说,技术人员(程序员)创业是根据自己的技术背景选择最熟悉的语言,但考虑到你不可能一个人写程序,你必须仔细考虑。无论使用什么语言,最终代码的质量都取决于管理,所以我们仍然从纯语言层面更加实用。java现在很流行、php、.net、python、ruby有自己的优缺点,python和ruby,现在人员招聘还是比较困难的,性能优化会费很大的力气,.net平台买不起windowserver。java、最常用的php。在早期阶段,几乎所有的应用程序都依赖于前端支持的网站。php具有入门简单、设计模式简单、写作快、性能充足等优点。然而,不注意设计模式也是其缺点,容易变得松散,隐藏更多的错误,难以维护。java的优点是有许多成熟的工具来帮助整个管理过程,强大的类型也可以避免一些弱智的bug。大多数java程序员更注重设计模式,而不管它是否实际,代码格式看起来仍然很好。这也是一个缺点,初学者可能过于注重模式,难以解决实际需求。前端不仅仅是html、css之类的。与用户互动的整个部分是前端,包括处理程序。建议使用这类程序的主要原因是开发迅速,员工广泛。至于行为分析、银行接口、异步信息处理等后端,只能根据不同的业务需求选择不同的语言。二、代码版本管理如果开发人员之间的网络速度相似,SVN;比较分散,比如跨国,hg。大多数人还是svn。假设选择了svn,有几个考虑因素。一是采用什么树结构。前期可能只有一个主干,以后需要建立一个分支,比如一个开发分支,一个在线分支,然后每个小组可能需要一个分支。建议在开始时选择两个分支,开发和在线。每个功能在当地测试正确后提交到开发分支,最后统一测试,可以合并到在线分支。如果你喜欢使用svn作为移动*盘,写一点也没关系,也就是说,当合并更大时,这些人可以建立自己的分支,甚至建立一个本地代码仓库,随意提交自己的分支,然后在测试后提交到开发分支。部署,可手动部署,也可自动部署。手工部署比较简单,一般是直接在服务器上svnupdate,或者找新目录svncheckout,然后把webroot给ln-s。应用程序越复杂,部署就越复杂,没有统一的标准,只要不使用ftp上传的形式,一个是上传文件引用不一致错误率增加,另一个是开发人员的版本很容易与在线版本不一致,导致想要改变错误的单词成为一个回滚杯。若有多台服务器仍建议自动部署,更换代码的机器将从当前服务池中临时撤出,更新后再重新加入。无论项目有多小,养成使用版本管理的好习惯至少可以作为你的备份,我的http://zhiyi.us虽然是wordpress,但还是svn,只改一两句css也是劳动成果。三、服务器*件不要羡慕大客户和有钱人,看看机房散户区,一台服务器孤独支撑的网站数不胜数。若资金稍有充足,建议至少三台标准配置,分别用于web处理、数据库、备份。web服务器至少需要8G内存,双sataraid1。如果经济稍微宽松一点,或者有更多的静态文件或图片,15ksasraid1 0。数据库至少有16G内存,15ksasraid1 0。备份服务器最好与数据库服务器配置相同。*件可以自己购买品牌底板,即机箱配备主板和*盘盒,CPU内存*盘配备自己,也可以在整个品牌或兼容机上使用。三台机器,市场情况6台、7万也就配齐了。网络服务器可以运行程序和内存缓存,数据库服务器只运行主数据库(如果是MySQL),备份服务器工作相对较多,网络配置、缓存配置、数据库配置与前两个一致,所以网络和数据库任何问题,备份服务器更改ip切换。备份策略可以是drbd、rsync或许多其他开源备份方案。rsync是最简单的,放在cron里自己跑就行了。备份和切换,建议做更多的测试,选择最安全、最适合业务的,并尽可能多地备份。4、尽量不要选择三种机房:联通访问特别慢的电信机房、电信访问特别慢的联通机房、电信联通访问特别慢的移动或铁通机房。那网通机房呢?亲爱的,网通联通N久前合并改名为联通。多寻找,实地考察,多测试,多探索,北京、上海、广州等主要节点城市,或有很多高质量的机房,找到网络质量好,严格的机房管理,特别是严格的管理,不要访问网站,打电话过去知道别人维护你的网络电缆,这比DOS头疼。自己拉几根光纤叫机房,看你的抗风险程度和心理素质。机房可以说是非常重要的,直接关系到网站的访问速度,网站的访问速度直接关系到用户体验。我可以翻墙看风景,但是很难买到网络游戏vpn来打开你这个不太知名的网站。也许你的网站ajax很出色,但document怎么也不ready,有些代码总是与用户绝缘。五、架构初始架构一般比较简单,web负载平衡 数据库主从 缓存 分布式存储 队列。总的来说,就这些东西而言,无数的文章已经重复了细节。根据未来的情况,会有N多WEB、N多主从关系、N多缓存、N多xxx设计。基本方案是现成的,但您比其他人更强大的是,考虑到缓存故障时的雪崩效应、同步数据的一致性和时差、队列的稳定性和失败后的重试策略、文件存储的效率和备份方法。缓存总有一天会失效,数据库复制总有一天会断裂,队列总有一天会写不进去,电源总有一天会烧坏。缓存总有一天会失败,数据库复制总有一天会断裂,队列总有一天会写不进去,电源总有一天会烧坏。根据墨菲定律,网站迟早会成为茶几。六、Linux服务器软件、nginx、php、mysql,除了名字,我们还必须选择版本。Linux有很多发行版本。只要没有特殊要求,就可以选择人数最多、社区最活跃、配置最方便、软件包最完整、最新的,比如debian。、ubuntu。至于RHEL,你使用只能在RHEL上运行的软件吗?剩下的nginx、php、mysql、activemq、其他的等等,除非你改变了这些软件或你的程序,否则尽量更新版本,新版本,意味着新特性、漏洞和性能的增加。道听途说的人总是告诉你,旧版本是稳定的。与特殊业务相比,所谓的稳定性,大多数人没有改变任何服务器软件源代码,绝大多数情况下可以顺利升级到新版本。类似jdk5到jdk6,python2到python3等变化较大的升级还是比较少见的。看看changelog,看看升级说明,根据自己的情况进行评估。升级越早越好。其他家庭使用php6编写程序,并参观php4。优秀的开源程序升级还是很负责任的,看好文档,不要害怕。以上六点已经准备好了。现在我们有了运行环境、基本架构骨架、备份和切换方案,我们应该开始设计和开发。在发展方面有无数的事情,下一篇文章将首先讨论一些重点。七、数据库几乎所有的操作最终都会落在数据库上,而且最难扩展(存储也很难)。在开发之前,必须确定mysql,什么样的表用myisam,什么样的表用inodb。还应确定复制策略和分片策略。在表引擎方面,一般来说,更新不多、不需要事务的表可以使用myisam,需要线路锁定和事务支持的表可以使用innodb。myisam的锁表不一定是性能低下的根本原因,innodb也不一定都是行锁,具体细节要多看相关文档,熟悉引擎特性才能更好的使用。现代WEB的应用越来越复杂。我们经常设计很多冗余的表结构。虽然不符合传统范式,但值得考虑速度。如果要求较高,甚至应结束联合查询。编程时要多注意数据一致性。在复制策略方面,多主多最好从结构开始设计,代码直接根据多主多编写,使用一些技巧避免复制延迟问题,解决多数据库数据是否一致,可以自己编写或找到现成的操作和维护工具。分片策略。总有几个表数据量超大,此时分片是必然的。分片有很多策略,从简单的分区到根据热量自动调整,根据具体业务选择适合自己的。避免以自增ID为主键,不利于分片。存储过程很难扩展。这种情况主要发生在传统的C/S,特别是OA系统转换的开发人员。低成本网站不是一两台小型机器运行数据库处理所有业务的模式,而是机海作战。方便的水平扩展比预分析时间和网络传输流量要重要得多。NoSQL。这只是一个概念。在实际应用中,网站拥有越来越多的密集写作操作、数亿的简单关系数据读取、热准备等,这些都不是传统关系数据库擅长的,因此产生了许多非关系数据库,如redis/TC&TT/MongoDB/Memcachedb等,在测试中,这些都达到了每秒至少1万次的写作操作,内存类型甚至超过5万次。例如,MongoDB可以通过几句配置形成复制 自动分片 在failover的环境中,文档存储也简化了传统的设计库结构再开发模式。很多业务可以用这样的数据库代替mysql。八、缓存。数据库非常脆弱,前面必须有缓存,事实上,我们优化速度,几乎是优化缓存,可以使用缓存,不要跑到后端数据库。缓存有持久缓存和内存缓存。生成静态页面是最容易理解的持久缓存。还有很多,比如varnish的分块缓存、上面提到的memcachedb等。memcached首当其冲。被动更新和主动更新可用于缓存更新。被动更新的优点是设计简单。当缓存空时,它会自动去数据库取数据,然后填写缓存,但很容易引起雪崩效应。一旦缓存大面积失效,数据库的压力可能会急剧上升。主动缓存可以避免这一点,但可能会导致程序无法获取数据。如何配合这两者,程序设计要多动脑筋。九、队列。一个用户操作可能会导致一系列资源和功能的调动。如果同时发生这些调动,压力无法控制,用户体验也不好。这些操作可以放在队列中,由其他模块异步执行,如发送电子邮件和手机短信。开源队列服务器很多,性能要求不高。使用数据库作为队列也可以。只要程序读写队列的接口保持不变,底层队列服务就可以随时更换,类似于Zend_Queue类的Zendframework,java.util.Queue接口等。十、文件存储。除结构化数据外,我们还经常存储其他数据,如图片等。这类数据数量多,访问量大。典型的是图片,从用户头像到用户上传的照片,生成不同的缩略图尺寸。存储的分布几乎和数据库扩展一样困难。在不使用专业存储的情况下,基本上是靠自己的NAS。这涉及到结构。以图片存储为例。图片很容易产生热点。有些图片上传后就没人看了。有些图片可能每天访问数十万次,大量小文件的异步备份也需要时间。为了准备未来的图片,最好在一开始就把图片的域名分开,而不是主域名。很多网站都设置了cookie.domain.ltd,如果图片也在这个域名下,很可能会因为cookie而导致缓存失效,占用多余的流量,也可能会因为浏览器并发线程的限制而导致访问缓慢。有一个简单的方法可以用普通的文件系统存储图片。计算文件的hash值,如md5,以结果第一为第一级目录,因此第一级有16个目录。从0到F,这个字母可以作为域名,0.yourimg.com到f.yourimg.com(客户端dns压力会增加)
推荐阅读
- 国内b2b网站有哪些 2022 国内b2b网站排行榜
随着这几年的疫情的影响企业知道网络营销的重要性,但是很多一直苦找无门没有合适的自己互联网营销方式,我们来看下B2B不仅仅是建立一个网上的买卖者群体,它也为企业的之间的战略合作提供了基础。任何一家企业,不论它具有多强的技术实力或多好的经营…查看详情
- 一般商标价格多少
商标的价格因多种因素而异,包括地区、商标分类、申请途径以及专业服务费等。以下是关于商标价格的一般指导和相关信息:商标作为企业的重要资产之一,有助于区别和保护其产品或服务。商标的价格通常由以下几个方面决定:1. 地区:商标注册费用在不同国家和…查看详情
- 企业沟通不畅 效率低?总管家CRM来帮你
“工欲善其事必先利其器”出自论语,意思是:一个工匠要想工作做得好,必须使用锋利的工具。对于普通的销售员来讲,想要有效管理客户,快速提升销售业绩,必须使用高效的跟单工具。对于企业来讲,想要提升管理水平,提高整体效益,必须借助先进的管理工具。图…查看详情
- 织梦模板首页修改教程
织梦模版下修改列表页头部模版和列表页底部模版后,网站的其他网页还是没有成功。希望好心人给以讲解?首先你看下,你修改的所谓列表页头部模板和底部模板在其他的模板文件是不是调用同一个,如果是的话,就更新缓存下。 然后在生成,织梦经常是缓存导致修…查看详情
- 电视剧免费看的软件有哪些 电视剧免费看的软件排行榜
现在市面上大多数电视直播软件都是要收费的,而且这些收费电视直播软件还是比较贵的,但是也有很多电视直播软件是不收费的,下面小编就给大家来详细介绍一下电视剧免费看的软件有哪些 电视剧免费看的软件排行榜这一块的相关内容,希望能帮助到大家。…查看详情
- 商标可随意使用吗?
网站logo和名称如果没注册商标的话,别人使用算侵权吗?不算。 我们国家对商标的适用原则是申请在先原则,就是谁先在商标局申请,这个商标就是谁的。如果都没有申请,肯定是谁都可以使用的。商标注册就是给予给予商标注册人以商标专用权,防止他人侵权…查看详情
- 域名注册管理机构不接受你的域名申请?可能是你不了解这些!
域名注册管理机构并不是指域名市场或平台上接受个体域名注册申请的公司,它和域名注册服务商/代理商是有明显区别的,某个具体的域名注册申请业务并不在域名注册管理机构的责任范围,所以不接受你的域名注册申请也很正常。如果您遇到了被拒的情况,您可以了解…查看详情
- 万商云集通过CMMI 3级认证,研发管理能力获国际认可
近日,万商云集经过CMMI研究院主任评估师的严格评估,顺利通过CMMI3级认证,向业界展示了万商云集领先行业的研发管理能力和孜孜不倦的品牌追求。(CMMI3级认证证书) CMMI资质是美国CMMII1titute企业管理的资质认证,是目前在…查看详情
- 阅读神器!6款免费看小说软件推荐
看小说是许多人闲暇时打发时间的方式,市面上各种小说软件琳琅满目,不少是需要付费后才能阅读的,因此许多人会在网络上寻找一些免费的看小说软件。那么,免费的小说阅读APP哪个好用呢?今天就为大家5款免费的小说阅读器,一起来了解一下吧。…查看详情
- 合作伙伴:葛氏济世堂
品牌介绍葛氏济世堂是四川省利健济世科技有限公司于2014年1月28日注册的第5类医疗用品品牌,注册号:9998238。葛氏济世堂自成立以来,坚持为顾客提供医药、健康理疗服务,葛氏济世堂的产品从制作到最终为理疗者服务,全程由公司核心团队严格把…查看详情
- 线上签合同用什么软件?线上签合同用软件排名
因为现在已经进入到了一个网络的时代,所以难免也会有一些需要线上签合同的情况出现,如果没有一个好用的工具,在平时生活中,自然就会受到一些影响。可以选择使用线上签合同的软件,不仅功能强大,同时也可以快速完成线上签合同的需求,那么下面…查看详情
- 新能源汽车品牌有哪些 新能源汽车十大名牌
新能源汽车领域这两年涌进了不少新兴的汽车品牌,而且国家也在大力发展新能源汽车,目前市面上的新能源汽车品牌还是i非常的多的,下面万商云集小编给大家来详细介绍一下新能源汽车品牌有哪些新能源汽车十大名牌,不知道下面的新能源汽车品牌有没有大家喜…查看详情
- 苹果怎么弄抖音动态壁纸
苹果怎么弄抖音动态壁纸呢?这是一个相对较新的技巧,但非常流行。如果你不知道如何做,不用担心,下面将为您详细描述。 您需要将设备升级至iOS13以上的版本。苹果推出了一种名为“Live Photos”的功能,使您的照片可以动态地播放。…查看详情
- 为什么注册商标?企业容易被告侵权,赔偿他人损失
为什么注册商标?因为商标是企业建立自主品牌的第一步,是企业的形象,并可以帮助企业巩固市场地位。企业若不注册商标,则随时可能被他人侵犯自己权益或面临被告侵权的风险。 图片来源于网络 为什么注册商标?这五大理由你不能不知道。◤ 1. 获取法律…查看详情
- 如何做好网站建设和推广
很多中小企业在建设网站时,往往对建设工作和推广工作的开展非常盲目。致使网站上投入很多的精力和财力,却依然不能得到好的效果。那么如何才能做好网站建设和推广,使企业网站更具竞争力呢?第一、做好网站建设和推广的第一步就是完成建站 网站建设是提升企…查看详情
猜你喜欢
最新文章

扫码二维码
立即领取《千元实战营销秘籍》
还可免费试用营销管理系统
*如有疑问,请随时拨打免费咨询热线:400-0033-166
服务时间:8:30-18:00
软件企业
认定号:川RQ-2018-0216
高新技术企业
认定号:GR201951001121

关注微信公众号
和10万中小企业共同成长

扫码下载APP
享全方位服务一触即达
Copyright © 2004-2022 万商云集(成都)科技股份有限公司 版权所有
蜀ICP备12001963号-2
川公网安备 51010402000322号

快速找产品

找一找哪款产品适合您?
咨询热线:400-0033-166
-


-
电话沟通
获取方案
下载APP
官方微信
扫码下载APP
全方位服务一触即达

关注万商云集
和10万中小企共成长

TOP

企业首选的数字选用平台

400-0033-166
8:30-18:00















































注册有好礼



