发表于: 2018-01-25 20:21:11

1 730


今天完成的事情:

今天完成了在本地进行AOP记录数据库以及方法的控制时间。
首先是针对数据库访问设置了AOP,成功完成记录。但是 在针对控制器的时候,不知道为什么,方法总是无法执行。
后来在师兄的帮助下,才知道是因为注册AOP切面的那个配置文件没有对目标类进行扫描。也就是Spring没有对目标类进行扫描。
将AOP注册加入到扫描好的配置文件中后,完美执行:
运行结果如下:
日志文件打印如下:
这就是一个早上的调试成果了。下午把关于格式的问题好好处理一下,然后开始编写相关的脚本。
下午检查pom文件的依赖的时候,发现net.sf.json-lib:json-lib:2.4的依赖总是带着红线,
首先我先是在依赖拓扑图中排除了一些重复的依赖包,没有效果。
才发现排除了重复的包之后,对应的依赖下方会出现这样的属性配置:
Exclusion是排除的意思。
然后就在网上找了半天的包,后来在一个文章中知道json-lib是需要区分jdk版本的,pom.xml中的配置应加上标签classifier指定jdk版本,如用jdk15,而我在网上下载的大多数json-lib:2.4 的包的命名其实都是json-lib-2.4-jdk15.jar
于是我尝试着在依赖引入里加上关于json-lib-2.4的版本,成功解决报红问题,最终如下:
Maven仓库下载如下:
晚上在把日志文件的打印格式和打印路劲,还有程序做了最后的完善以后,基本上都是一些普通的操作,就没有记录。然后开始正式在服务器统计方法与数据库的执行时间,:
日志如下:
脚本统计如下:
脚本如下:
感觉有一个地方,就是在程序刚刚启动的时候,数据库以及方法的执行会很慢,但是接下来的访问速度和执行速度都会维持在10MS以下。感觉可能是缓存的原因吧。

自此,任务三全部完成。

深度思考:

1.nginx服务器有什么作用?什么叫反向代理?为什么要使用反向代理?

 一个完整的代理请求过程为:客户端首先与代理服务器创建连接,接着根据代理服务器所使用的代理协议,请求对目标服务器创建连接、或者获得目标服务器的指定资源。 Web代理(proxy)服务器是网络的中间实体。 代理位于Web客户端和Web服务器之间,扮演“中间人”的角色。HTTP的代理服务器即是Web服务器又是Web客户端。
    代理服务器是介于客户端和Web服务器之间的另一台服务器,有了它之后,浏览器不是直接到Web服务器去取回网页而是向代理服务器发出请求,信号会先送到代理服务器,由代理服务器来取回浏览器所需要的信息并传送给你的浏览器。

Nginx主要是服务于服务器,作为服务器与客户之间的中间代理。

正向代理 
    是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。
反向代理服务器:
    在服务器端接受客户端的请求,然后把请求分发给具体的服务器进行处理,然后再将服务器的响应结果反馈给客户端。Nginx就是其中的一种反向代理服务器软件。

客户端必须设置正向代理服务器,当然前提是要知道正向代理服务器的IP地址,还有代理程序的端口。
    反向代理正好与正向代理相反,对于客户端而言代理服务器就像是原始服务器,并且客户端不需要进行任何特别的设置。客户端向反向代理的命名空间(name-space)中的内容发送普通请求,接着反向代理将判断向何处(原始服务器)转交请求,并将获得的内容返回给客户端。


2.什么是ssh?如何在linux服务器上从网站下载文件?

SSH ,为 Secure Shell 的缩写,是由 IETF 的网络小组(Network Working Group)所制定的安全外壳协议通过使用SSH,你可以把所有传输的数据进行加密,这样可以避免别人对你的访问进行拦截,而且也能够防止DNS欺骗和IP欺骗。

现在学到的是在linux服务器下,使用wget命令来从别的网站下载文件到服务器。

3.如何写shell脚本?尝试自己编写一个简单脚本。

脚本的编写并不复杂,主要是对相关命令执行的熟悉,而脚本,只是通过文件的形式,将这些命令组合在一起,并利用一些判断循环语句作为流程控制。说到底就是一些命令的封装。


明天计划的事情:提交任务三,对任务一二三的学习内容进行梳理,开始任务四的学习。


遇到的问题:以解决,记录在上面。


收获:

1.只有在你知道了一部分的信息之后,你才有可能去辨别别人教你的其实是对的。就像最开始我就搜到了关于JDK15的那个设置,但是我只想着匹配到2.4,后面在经过一些别的尝试之后,有了一些理解,再次看到这个的时候,就知道原来是这么回事儿。


2.有时候代码的错误不在于你已经做了的处理,而在于你还没有来得及做的处理。有时候修改错误是填补遗漏,而不是修改已经存在的东西。


3.按着条理一步一步完成项目,才发现任务一二那个时候,没有记录的指引,自己就一直在毫无方向的撞墙。


进度:正式完成任务三,并已经交师兄审核完毕。

http://task.ptteng.com/zentao/project-task-490.html


返回列表 返回列表
评论

    分享到