做一个拥有自己站点的java程序员

2018-09-18 16:59:52

有个事情和大家分享下,有个自己做了三年java开发的人问我,说想建一个博客类型的网站,主要发表个人的文章,然后用户可以留言,大概就是这么个简单的东西,应该怎么去做。我耐心的和他解释道,应该按照什么样的步骤去做,我解释完后满以为他已经完全懂了,毕竟就这么点东西,很多不是搞技术开发的人,像前十年前的很多站长都是拿本书自学和不断的在百度,很多建的站都是风生水起,我觉得程序员是自带建站光环的,所以解释完毕后以为就功德圆满了。过了一段时间,这个人又找到我,并发给我了一个ip地址,说个人站建好了,叫我看看并指点一二,我当时一看是个ip地址,我当时连点击去的欲望都没有,但是既然人家虚心请教,我也得进去看看怎么回事,我进去一看,网站外观挺漂亮,但是站点内容非常庞大,简直就是一个分类信息门户网站,仔细一看,原来是用wordpress一键部署搭建的网站,我当时就毫不客气的指出存在以下三个问题。1.你是学java开发的,wordpress用的是php语言,也就是说这个网站从技术角度来说你基本学不到和提高不了java相关的技术,而且对这个网站自己想改点自己的想法东西都很难。2.网站太大,你根本没能力去运营起来,几乎没人会来看你的网站。3.做为java程序员建站更多的目的应该是通过建站将自己所学的东西运用起来,然后在建立的过程中会碰到一些技术问题,去逐渐解决,最后做一个能满足自己需求的博客类型网站。我当时指出这些问题,他表示不太认同,他说他差一个域名,然后他买域名去了,买了个香港区域服务器(不需要备案),又是用wordpress一键部署搭建网站,最后每天晚上搞的很晚不断的从别的网站复制内容过来发布上去,搞了二周,有域名,有内容,像模像样了,结果他觉得做这个网站没什么意思了,因为他不知道干些什么了,最后他再次找到我,说建这种网站已经违背了他当初的初衷了,然后也聊了很久让我出一个java程序员的建站指南分享给大家。我觉得建一个站点需要以下这些步骤。

一 软件环境

1.去网上搜索一个自己喜欢的风格的博客类型的网站模板,一般下载下来都是html格式,如果自己有前端和设计能力,自己设计是最好的,可以将自己的想法都发挥出来,将做好的html页面放到自己的项目工程变成jsp即可,如果实在找不到博客类型模板,也可以找我要,我自己存了一些模板可以参考。

2.工作2,3年左右的java程序员,大多都爱谈论一些主流框架是什么,很多在企业里面开发的项目大多都是管理系统之类,用到常见的技术框架如springmvc+mybatis,建议选自己所熟悉的框架去搭建网站,切勿用什么springcloud和dubbo之类的去搭网站,因为前期花太多的时间在技术某个点上会大大打击建站的热情和信心,你可以在网站搭建后有点流量了或者自己想优化网站这个时候可以穿插更多的java技术点进去,是更好的了。

3.web服务器建议先用tomcat就行,虽然tomcat本身对页面访问能力性能并不是最好的,但是前期对于一个刚搭建自己网站的新手来说是够用了。

4.数据库还是主流mysql即可。

二 硬件环境

1.服务器。你要学会用linux,不要问什么,做为一个java程序员连最基本的linux服务器远程连接,上传jdk,tomcat安装包,安装jdk,tomcat,配置防火墙,启动和关闭tomcat这些基本命令都不会都hold不住的话,那你真的不需要搞java了,你可以说我以前公司没机会接触这些啊,既然这样的话,你就从现在开始接触并要熟悉这些,因为这是java程序员最基本的素质了,其实真的不难,无非就是一些命令而已,操作两遍都会了。Liunx服务器我建议去阿里云上购买即可,阿里云的服务器目前在全国来讲还是NO1的,口碑在那里就不多说,前期做一个网站只是试试水的话,推荐买个1核2G1M的即可(等网站有了流量再升级),系统选择CentOS 6.8 64位即可。

2.数据库。如果买以上1核2G1M的linux服务器配置的话,我建议不要再在上面安装个mysql了,因为性能会非常差,如果确实要安装,就要将tomcat和mysql内存调到非常小,建议去阿里云买个云数据库RDS MySQL,就买个1核1G的前期够用了。

3.域名。域名很便宜,但是备案是需要二周左右时间,并且你的服务器在哪里买的,你的域名就必须在哪个服务商那里备案,除非你用香港或国外服务器就不需要备案。所以买域名一定跟着服务器走,比如你在阿里云买的服务器,就最好在它上面买域名,你要是在腾讯云或者其它厂商买的域名就算备案了,你现在用的是阿里云服务器,你还得再备案一次。

关于linux服务器安装jdk,tomcat,mysql相关文档可以在51jdk博客查看,里面有详情步骤,实在还是搞不定的话,可以问我,我会解答相关疑惑。做任何事情都是需要耐心和恒心的,当迈出这一步坚持下去,你就会发现其实服务器操作和发包就这么回事。这里多说一句,阿里云对于新用户来说,送1000元服务器代金劵,可以领取后去下单减免一些金额

领取地址: https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=5gg22qjx

当你把以上的所有东西按照步骤都做完并成功搭建起网站,虽然过程很辛苦,但你会发觉你真的学到了很多东西,自己的工程发布到linux服务器,从前端到后台到服务器和数据库,全部是由自己开发和操作的,你趟过很多坑,但都一个个解决了,除了磨练技术,你还获得了很大的成就感,当你的网站有点点流量的时候,你发现问题又来了,经常有人反馈说你的网页打开很慢很慢,甚至网页都打不开了,这个时候你又要去优化网站了。

三 优化网站

1.网页静态化。为了提高网页的访问速度,也许你前面已经在做了一些性能优化,但只是后端的访问速度优化,比如你把网页内容全部放缓存,也就是说所有的读都是从缓存里面读,除了写直接操作数据库,仅仅这样还是不够的,前面说过,tomcat本身对页面访问能力性能并不是最好的,这个时候可以用到nginx高性能Web服务器,也就是说用户访问网站直接走nginx,不需要走tomcat,这个时候的tomcat的作用只是纯后台管理,发布文章和留言等。做网站比较好的优化方案就是页面全部静态化,如果做不到全部,至少首页和前面几个页面一定要做静态化。也有人问我,页面静态化复不复杂,这么说吧,博客网站一般页面并不多,就那么4,5个页面,你需要在后台管理系统里面做个功能,点一键发布,然后将所有的页面全部生成html里面放到nginx目录下即可。有人又问,我发布的文章有上百篇,其实就是按照一个模板生成,去数据库里面读取数据,按照分页生成html即可。

2.评论功能。静态网站放评论功能,要么自己去开发,要么用一些第三方评论插件。先说说目前第三方评论插件,个人推荐二款可以试试,畅言和多说。具体细节不展开,用评论插件的好处是功能比较强大,但是数据在别人那里,作为程序员来说,其实自己开发一个简单的评论功能也不是特别难,无非就是往数据库提交数据而已,当然功能不需要特别强大,比如不需要注册评论,评论也不需要多级留言等。

当你把网站优化做完后,你会发现网站性能的确比之前提高了很多,而且学会了使用nginx,和反向代理这些知识点并实际去操作,如果你觉得现在就没东西可搞了,那你错了,一切才刚刚开始,你会发现你的网站偶尔会有些漏洞,比如xss跨站攻击,流量攻击,甚至挂马或挂黑链等等,不过没关系只要你发现了,你肯定能去解决,你需要通过不断的去解决问题来提高自己的各种技术知识点,最后就是你可以在自己的网站上做很多东西你想做的功能,因为地盘是你的,一切你说了算。


(微信打赏)

(支付宝打赏)
原创不易,谢谢赞赏。你的支持就是我的动力,我会更加努力。
  1. 2018-09-19 23:39:46

    我的微信号18521306817,去年从上海回长沙,搞net的,java多少也会点。都是搞技术的, 一起交流交流。

高并发场景限流方式

公司搞了个大促销活动,准备了10台服务器来应对活动的到来,但促销活动开始后,原本估计只有100万人参加的促销活动,瞬间涌进来1000万用户,远远超过了服务处理能力的访问请求,导致后端的服务器直接

阿里云产品1000元服务器代金券大礼包免费领取。

阿里云服务器低门槛上云捷径,普惠上云,云服务器1核1G仅需293元/年。

企业级高性能实例,限时2-5折,限首次购买ECS用户参与,限购4台。