项目中所用技术汇总

soa架构

  •   分布式架构,对应着垂直式架构

 

 


 

zookeeper

  •   注册中心,分布式应用管理程序

 



dubbo

  •   分布式框架,rpc实现框架,简单来说就是跨应用掉方法的框架​

 

 


 

angularjs

  1.             MVC前端框架,可以在前端写大量业务代码
  2.             body标签要加 ng-app;要引入核心包
  3.             页面要展示数据要用两个大括号{{表达式或变量}}
  4.             angularjs 在input中用ng-model指令融合id与name ; ng-model的值放入当前页面的$scope域保存
  5.             $scope是angularjs的内置对象,$scope中有请求的数据,有响应的数据还有方法都放进去了,作用域是当前页面
  6.             在body中用 初始化指令 来赋值 列:ng-init="myname='小明'"
  7.             ng-click鼠标单击指令-----》事件
  8.             指令 ng-repeat = "变量名 in 要遍历的数组"
  9.             $http是angularjs的内置对象,主要作用是发ajax请求,‘$http.get’就是get请求,post同理
  10.             $event是angularjs中的内置对象, 作用是从$event当中可以获取当前操作的事件是什么.例如如果是复选框那么可以中里面知道是勾选还是取消勾选
  11.             $watch是angularjs的内置对象,作用是监听$scope域中的某个遍历发生了值的改变

 


 

springSecurity框架

  • 如果要用户名密码去数据库验证需要自己实现UserDetailService类
  •        dubbo的bug之一,扫描的唯一一个包只能扫包下面一层,如需扫描其他包则要直接bean标签

 

FastDFS

  •           分布式文件系统,可以统一管理存储服务器集群, 统一管理存储读取文件.​

 

Redis

  •             nosql数据库
  •             流程:获取数据时从redis中直接获得,不用去数据库,获取不到就去数据库查询,然后在redis中存一份
  •             持久化方案:
  •                 rdb(默认) 分时持久化:可以在配置文件中设定, 多长时间持久化一次, 持久化次数少也就是操作硬盘的次数少,

                        速度快. 但是如果在没有完成持久化前, 如果服务器断电, 则内存中没有持久化的数据会丢失.

  •                 aop 实时持久化:每次向redis中做增删改操作, 都会将数据持久化到硬盘上, 数据可靠性高, 不会丢失,

                        但是速度慢

  •             redis在互联网项目中一般作为分布式缓存用
  •             redis中数据类型: string, set, zset, list, hash

 

Solr

  •             什么是solr:

              solr是一个apache的全文检索引擎系统, 就是个war包,可以放在tomcat中运行


              solr底层是lucene


              使用solrj可以操作solr服务器

  •             作用:


              对于大数据量搜索或者是查询, 速度非常快, 并且不会随着数据量的增大而减缓查询速度.

              主要应用于大型的互联网项目中, 做大规模数据查询.

  •             solrhome:


              solrhome就是solr的家, 一个solr服务器只能有一个solrhome, 一个solrhome中可以有多个solr实例, 里面的collection1

              文件夹就是默认的solr实例, 一个solrhome中可以同时有多个实例, 实例中有索引库, 实例和实例之间是互相隔离的 ( 类似于数据库 )

  •             springDataSolr:


           底层用的是solrj

           spring Data Solr里面的Criteria对象中的方法, is和contains的区别:

                contains: 类似mysql中的like模糊查询,将关键字当成一个整体

                is:把关键字使用对应域的分词器进行且分词,然后将切分出来的每个词, 进行查询

 


freemarker模板引擎

  •   作用:freemaker模板引擎可以通过模板和数据生成静态化页面.
  •   优点
    1.   提前根据数据和模板生成静态化页面并通过io流写道硬盘上,访问时可直接访问硬盘而不用访问数据库,大大的提高并发读取性能
    2.      提前生成好页面,提高访问的速度
    3.   由于html不需要tomcat解析浏览器可以直接访问, 所以给tomcat降低高并发访问压力 
  •   使用场景:页面有固定的样式, 并且一次生成多次读取, 尽量少的改动数据
  •   freemarker生成静态化页面:
          1.    页面 = 模板 + 数据
          2.    模板: 模板在freemarker中是以.ftl为后缀名的文件, 在模板中可以使用html标签, css, js,图片等静态资源,模板中可以使用el表达式获取数据, 但是无法使用jstl标签来判断和循环, 所以模板引擎会有自己的一套标签库
             3.    数据:数据一般存储在关系型数据库或者redis

     


springBoot框架

  介绍:简单来说就是一个后端全栈框架

  作用:提倡零配置, 不用整合框架结构, 直接编写业务代码, 给企业提供人员利用率, 提高开发效率. 但是springboot只适合小项目使用.


 

posted @ 2019-11-29 09:28  zddsl  阅读(1080)  评论(0)    收藏  举报