Nginx 基本知识快速入门

什么是 Nginx?

Nginx 是一个高性能的 HTTP 和反向代理服务器,以高稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。

Nginx 特点

  • 处理静态文件,索引文件以及自动索引;打开文件描述符缓冲.
  • 无缓存的反向代理加速,简单的负载均衡和容错.
  • FastCGI,简单的负载均衡和容错.
  • 模块化的结构。包括 gzipping, byte ranges, chunked responses,以及 SSI-filter 等 filter。如果由 FastCGI 或其它代理服务器处理单页中存在的多个 SSI,则这项处理可以并行运行,而不需要相互等待。
  • 支持 SSL 和 TLSSNI.

秋招第三站 —— 内推阿里(一面)

3、阿里巴巴(菜鸟网络部门)(一面 49 分钟)

2017.08.02 晚上9点21打电话过来,预约明天什么时候有空面试,约好第二天下午两点。

2017.08.03 下午两点10分打过来了。

说看了我的博客GitHub,觉得我学的还行,知识广度都还不错,但是还是要问问具体情况,为什么没看到你春招的记录,什么原因没投阿里?非得说一个原因,那就是:我自己太菜了,不敢投。

秋招第一站 —— 亚信科技

第 1 站、亚信科技 Java 开发

1)自我介绍(说到一个亮点:长期坚持写博客,面试官觉得这个习惯很好,算加分项吧)

2)看到简历项目中用到 Solr,详细的问了下 Solr(自己介绍了下 Solr 的使用场景和建立索引等东西)

Java 性能调优需要格外注意的细节

昨天写了篇文章 《MySQL 处理海量数据时的一些优化查询速度方法》 ,其实开发中不止数据库要优化,还有我们本身的开发代码也需要优化,这样我们开发的产品才能够得到极致的体验。也许有些人认为这些细小的地方没有啥好修改的,改与不改对运行效率没啥大的影响?首先在我们本地一个人测试下效率是不怎么明显,但是如果到发布上线后,你的用户有几百万,甚至上千万,这些用户同时访问你的网站,那么你的网站是否经得住考验呢,效率那高不高呢,如果效率不高,那么需要多出很多买服务器的经费呢,所以想想还是很有必要注意这些小的细节。今天就讲讲一些 Java 性能调优需要格外注意的一些细节。

代码优化的目标:

  • 减少代码的体积
  • 提高代码的运行效率

AJAX 学习

背景

最近的项目中大量地方需要使用 AJAX,无奈,谁叫我既要写前台又要写后台呢,只好学习下这个技术点,主要参考 W3school 文档,下面记录下这些知识点,便于日后自己查阅,下面的一些测试代码建议在 W3school 中测试。

AJAX 基础:

AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。

AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。 在很多网站可以见到使用这种技术。

java.sql.SQLException Field 'id' doesn't have a default value

1、错误描述

在做一个电商网站项目时,使用 Mybatis + MySQL 时出现问题 Caused by: java.sql.SQLException: Field 'id' doesn't have a default value ,网上很多人说是 MyBatis 插入数据行 ID 没生成自增。但是我尝试好久,没解决该问题。

2、错误原因

后来才发现是因为创建数据库时的建表语句中的 id 是主键的,但是在插入的过程中,没有给予数值,并且没有让 id 自增。

3、解决办法

修改数据库表中的id,让其自增(在插入的过程中,不插入id数据时)。

(我是直接将整个数据库都导出来,然后在每个表的 id 后面加上一个 auto_increment), 如下 :

循环队列的相关条件和公式

循环队列的相关条件和公式:
队尾指针是rear,队头是front,其中QueueSize为循环队列的最大长度

  1. 队空条件:rear==front
  2. 队满条件:(rear+1) %QueueSIze==front
  3. 计算队列长度:(rear-front+QueueSize)%QueueSize
  4. 入队:(rear+1)%QueueSize
  5. 出队:(front+1)%QueueSize
  6. 队列中元素的个数: (rear-front+QueueSize)%QueueSize

搭建一个博客项目后的碎碎念

前言

以前大二的时候就想一个人独立做一个由 Java 开发的个人博客, 可耐当时还很弱鸡,一个人难以独挡一片,因为要会的东西太多,后来自己看到很多都是由 WordPress 搭建的博客,很多模板很漂亮,可是自己要稍微对 “拍黄片” 了解一点,并且里面的各种插件特特别的多。去年的时候就开始用上了 GitHub Page 搭建静态的博客,因为自己一直习惯用 Markdown 写作,写完后,软件可以直接生成 PDF 和 HTML 文件,这样就很方便了,直接将自己的 HTML、PDF 和 MD 文件一起 push 到 GitHub 上,然后自己在通过域名加上文章链接就可以直接访问我的博客了,这样就省了很多事了。还提供了 PDF 和 MD 版本,对有不同需求的人都可满足了。可是后来觉得这样的逼格还是不够高,就又开始折腾 Hexo 了,发现用 Hexo 也是很非常简单的(其实是看到 Hexo 的 yilia 主题非常漂亮)。于是就换上了 Hexo 了,自己在这上面写博客也很方便。每次用软件写完后,在 Git Bash 下敲一行命令 hexo d -g 就行了,很方便!前段时间看到了一款开源的博客(由 Java 搭建而成)—— Tale,主题比较简洁,符合程序员的范。也刚好符合自己最初的想法,但是我是没打算放弃现在的博客,就是有一个想法,自己也跟着在那个基础山修改下。(因为 Tale 使用的是轻量级 mvc 框架 Blade 开发,我好像不太了解这个框架呢),想着就 SpringBoot 开发比较快,上手也简单。当时就有这个想法,可怜没时间,不过前些天发现有人就是基于那个 Tale 博客重新修改了,用的就是 SpringBoot ,哇,果然是英雄所见略同。当时就和作者邮件联系了,于是蹭这些天的时间赶紧去看看,结果不只是看看,完全自己就全部敲了一遍,终于在今天搞定了,为了庆祝,才写下这篇文章,好好记录这些美好的时刻(博客可以完全发挥,不限题材)。通过自己深入这个项目,才能够很了解内部的实现方式,这点收获很大,这十天时间花的值,再此感谢两位原作者 ZHENFENG13otale