大数据
文章平均质量分 71
chou_out_man
学习阶段,欢迎指正错误!
展开
-
一种基于 JEP 和可配置公式实现用户自定义字段的解决方案
一种基于 JEP 和可配置公式实现用户自定义字段的解决方案一、 简介A: 介绍JEP(Java Expression Parser)用于解析和计算表达式,核心功能就是计算公式的解析和结果的计算。在JEP 2.4.1版本之前未符合GPLv3 协议的免费开源包。JEP 支持用户自定义函数、常量、变量,在JEP中已经包含了大量可使用的通用数学公式和常量,可以满足绝大多数的数...原创 2019-03-11 09:56:17 · 2004 阅读 · 0 评论 -
互联网架构阶段 数据库读写分离 Amoeba
数据库的读写分离一 、电商项目中数据库瓶颈使用redis缓存减小数据库的压力 , 从而提升数据库的效率单个数据库同时负责读写操作 , 底层可能会出现锁的现象: 同步锁 , 事务锁 , 乐观锁 , 悲观锁单个数据库同时负责读写操作 , 效率还是不高 , 所以引入了数据库的集群 , 尽可能的减少锁的存在 , 利用集群的不同数据完成读和写的分离引入读写分离的主从结构 主: 写数据从: 备份数据原创 2018-02-02 23:06:41 · 353 阅读 · 0 评论 -
大数据互联网架构阶段 前台系统架构 跨域请求
电商项目 前台系统的架构零、目录前台架构设计前台分类树跨域请求技术 jsonphttpClient一 、前台架构设计不能直接访问数据库 , 需要通过后台访问数据架构: 单通道连接资源 , 数据资源不能交叉访问安全: 前台 对外网挂接 , 不适合访问数据库 , 有安全隐患 , 前台需要跨系统访问数据跨系统访问数据用到的的技术: jsonphttpClientRabbitMQ原创 2018-02-02 23:02:53 · 713 阅读 · 0 评论 -
大数据 互联网架构阶段 Redis(三)redis集群
Redis(三) redis集群一、 redis哨兵模式的缺点问题一 : 横向扩展不方便 , 一旦扩展 , 无论代码结构多么简单, 都需要修改问题二 : 散列分布式算法是hash一致性 , 无论多少的数据迁移都会造成扩展集群和收缩集群时必须要做数据迁移 。 redis在3.0 版本时引入redis集群的技术 , 解决以上问题 无论如何扩展redis集群 , 代码都无需修改 , 继续使用旧配置原创 2018-02-02 22:57:17 · 2020 阅读 · 1 评论 -
大数据互联网架构阶段 Redis(二)
Redis(二)零 、 目录将缓存引入电商项目主从复制哨兵模式集群容忍度CAP理论十、 将缓存引入电商项目使用Spring框架维护Jedis池对象引入一个配置文件 application-redis.config<beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://ww原创 2018-02-02 22:55:15 · 1709 阅读 · 0 评论 -
大数据 互联网架构阶段 Nginx的使用
Nginx一、情景分析如何构建一个tomcat集群 , 两种构建方式 但是此时将项目部署到tomcat集群上之后用户还是只能通过固定的ip和端口访问固定的服务器 ,并没有达到构建tomcat集群时分散服务器 压力的效果 , 此时就可以使用Nginx达到效果Nginx是一个高性能的反向代理服务器正向代理:代理的客户端 , 将客户端的请求处理后交给外网服务器反向代理:代理的服务端的响应。原创 2018-02-02 22:52:33 · 1668 阅读 · 0 评论 -
大数据WEB阶段 shiro安全控制框架
shiro安全框架零、目录问题引申shiro介绍shiro工作流程使用shiro 进行登录操作使用shiro进行权限管理一、 问题引申需要实现的功能: 用户没有登录的情况下 , 处理登录界面其他页面都不能访问权限控制: 根据用户的权限列表内的权限 , 控制页面中各项功能的显示解决方案: shiro安全框架二、 shiro安全框架介绍Authentication:登录证明 , 当用原创 2018-01-09 20:26:35 · 310 阅读 · 0 评论 -
大数据 互联网架构阶段 Redis
Redis零、 目录高并发思路电商网站中缓存数据库的设计缓存介绍按照redisredis常用命令redis其他数据结构数据分布式存储Jedis客户端哈希一致性补充一、 高并发思路技术: tomcat集群+ nginx 理论上引入20台nginx — 100万/s的并发量问题: 当100万个用户同时增删该查时 , 就出现了系统瓶颈系统瓶颈: 后台程序能支持100万/秒的访原创 2018-01-18 11:34:58 · 1790 阅读 · 2 评论 -
大数据WEB阶段 Servlet配置优先级 , Spring容器设置对静态资源放行
Servlet配置优先级 , Spring容器设置对静态资源放行零、目录servlet优先级Spring容器对静态资源放行一、servlet优先级web.xml时整个web应用的核心配置文件 , 在web.xml中配置者整个web应用的初始化参数 , 监听器 , 过滤器 , servlet(加载次序从左到右) , 但是多个servlet加载时也是有优先顺序的 ,可以通过标签手动设置<load原创 2018-01-08 00:00:31 · 705 阅读 · 0 评论 -
大数据WEB阶段 Js常用的页面操作
window.location.reload();//刷新window.history.go(1);//前进window.history.go(-1);//返回+刷新window.history.forword();//前进window.history.back()//返回原创 2018-01-07 23:45:07 · 688 阅读 · 0 评论 -
大数据WEB阶段 使用mybatis是多值传递问题
使用mybatis是多值传递问题一、 分析在mybatis使用时 , 默认只允许在映射接口的方法中传递一个值 , 这时在映射文件的sql语句中可以用任意的名字取值 实体User中 有name和age属性 UserMapper.java映射接口中 public void select(String aaa); UserMapper.xml映射文件中 <selec原创 2018-01-07 23:39:24 · 274 阅读 · 0 评论 -
大数据WEB阶段 TransientDateAccessResourceException
大数据WEB阶段 TransientDateAccessResourceException一 、 分析如果数据库保存的字段有时间 , 但是没有给该字段赋值时 ,则该字段默认是0000-00-00 00:00:00 , 此时数据库会报错二、 解决修改jdbcUrljdbcUrl=jdbc:mysql://IP地址:端口号/数据库名?zeroDateTImeBehavior=converTonNu原创 2018-01-07 23:18:03 · 418 阅读 · 0 评论 -
大数据WEB阶段Mybatis(二)
Mybatis(二)零、目录Mybatis接口形式Mybatis整合SpringMybatis的缓存机制手动封装结果集一对一表操作一对多表操作多对多表操作SpringMVC 、 Spring 、 Mybatis三大框架整合一、 Mybatis接口形式为表User创建映射接口 此时要注意 接口的全名称要与映射文件中的namespace一致。接口中的方法名与映射文件中sql的i原创 2017-12-28 22:22:58 · 388 阅读 · 0 评论 -
大数据WEB阶段Mybatis(一)
Mybatis(一)零、目录Mybatis介绍Mybatis入门案例增删改查练习映射文件中取值问题Mybatis中单值传递和多值传递问题sql语句的复用别名标签动态更新动态查询动态插入 批量删除一、Mybatis介绍Mybatis是一款优秀的数据持久层框架Mybatis内部也是JDBC原理回顾JDBC缺点: 需要频繁的开关数据库连接查询的结果需要手动进行封装JDB原创 2017-12-27 19:30:55 · 973 阅读 · 0 评论 -
大数据互联网架构阶段 全文检索技术
全文检索一、 全文检索的引出我们生活中的数据总体分为两种:结构化数据 和非结构化数据 。结构化数据: 指具有固定格式或有限长度的数据,如数据库,元数据等。非结构化数据: 指不定长或无固定格式的数据,如邮件,word文档等。 当然有的地方还会提到第三种,半结构化数据,如XML,HTML等,当根据需要可按结构化数据来处理,也可抽取出纯文本按非结构化数据来处理。非结构化数据又一种叫法叫全文数据。原创 2018-02-02 23:11:15 · 6329 阅读 · 0 评论 -
大数据互联网架构阶段 Java爬虫
Java爬虫一 、 爬虫简介http://www.lete.com , 乐贷网其实就是爬虫的简单应用 ,发送一个商品连接 , 获取商品信息目标 爬取京东所有商品的信息封装在自己的Item实体类中分析: 京东允许爬虫爬取数据么? 京东是允许爬虫的 , 没有反爬虫技术爬虫产品: httpClient :但是httpClient抓取的是整个页面 , 整夜字符串的处理、解析比较繁琐 ,原创 2018-02-02 23:12:28 · 1104 阅读 · 0 评论 -
玩转LogBack
玩转LogBack零、 目录概述LogBack 、Slf4j 和 Log4j 之间的关系LogBack结构配置详解根节点<configuration>包含的属性根节点<configuration>的子节点<appender>详解完整配置案例一、 概述LogBack 是一个日志框架, 他与Log4j 可以说是同出一门 , ...原创 2019-03-11 09:50:37 · 235 阅读 · 0 评论 -
Flume架构及应用
Flume架构及应用零、 目录flume 架构介绍flume概念flume特点flume可靠性flume核心概念flume架构介绍flume运行机制flume广义用法flume 应用 – 日志采集flume 配置启动过程具体案例总结一、 flume 架构介绍flume 概念在具体介绍flume 之前 , 先给大家看一下Hadoop业务的整体开发...原创 2019-01-16 19:58:28 · 699 阅读 · 2 评论 -
POI的常规使用
POI使用实例一 、 简介Apache POI是Apache软件基金会的开源项目,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。 .NET的开发人员则可以利用NPOI (POI for .NET) 来存取 Microsoft Office文档的功能。,Apache POI提供API给Java程式对Microsoft Office(Excel、...原创 2018-04-16 21:50:17 · 504 阅读 · 0 评论 -
SVN基本的理解和使用
SVN一 、 简介开源的版本控制系统中央管理SVN中的一些概念: repository : 源码同一存放的地方checkout : 没有源码时 ,提取代码commit : 修改完之后 , 提交代码update : 更新代码 , 获取中央仓库中最新的代码实际开发流程: 假设你已经checkout并且已经工作几天了 : Update(获取最新的代码) –> 做出自己的修...原创 2018-03-23 13:32:07 · 1575 阅读 · 0 评论 -
使用Redis 实现消息队列
一 、为什么要用Redis实现轻量级MQ?MQ的主要作用: 应用解耦异步化消息流量削峰填谷目前使用比较多的是ActiveMQ 、 RabbitMQ 、 ZeroMQ 、 Kafka 、 MetaMQ 、 RocketMQ等在业务实现过程中 , 就算没有大量的流量 , 解耦和异步化也是处处可用 , 此时MQ就显得尤为重要 。 但与此同时MQ也是一个蛮重的组件,例如我们如果用Rab...原创 2018-03-23 13:30:44 · 6440 阅读 · 0 评论 -
大数据互联网架构阶段 QuartZ定时任务+RabbitMQ消息队列
QuartZ定时任务+RabbitMQ消息队列一 、QuartZ定时任务解决订单系统遗留问题情景分析: 在电商项目中 , 订单生成后 , 数据库商品数量-1 , 但是用户迟迟不进行支付操作 , 这样不仅导致没有生成效益, 而且导致后来的用户无法购买的问题 。 这种情况的订单成为恶意订单解决方案: 早期: 虚拟商品数量 , 数量减到0时 ,仍然可以减。 但是这种办法显然没有根本的...原创 2018-02-02 23:08:52 · 15238 阅读 · 1 评论 -
大数据 NIO
NIO一、基础回顾a 、 进程与线程进程 进程: 程序加载到内存中之后被CPU所计算的过程 — 进程是计算机资源分配 、 任务调度的最小单位三个维度考虑进程: 物理内存维度:每一个进程都要分配一块连续的内存空间(首地址 、 尾地址)进程执行维度/逻辑维度: 每一个进程都能被CPU计算 , 每一个进程都能挂起然后让另外的进程被CPU计算 — 对于单核CPU而言 , 每一个时刻只能计算一个进程原创 2018-02-27 17:39:53 · 315 阅读 · 0 评论 -
大数据WEB 部署项目到linux中
部署项目到linux中零 , 目录常见的linux命令XShell工具在linux上安装jdk在linux上安装tomcat在linux上安装mysql部署项目一、 常见的linux命令ifconfig: 等同于window下的ipconfig命令 , 查看本机的网路配置情况cd / : 进入到根目录cd ..:返回上一级目录ll: 查看当前目录下的文件的详细信息ls: 查看原创 2018-01-10 20:27:54 · 656 阅读 · 0 评论 -
大数据互联网架构阶段 大型电商项目数据库设计时应该注意的点
大型电商项目数据库设计时应该注意的点一、 id的设计int(int)类型: 性能高 , 但是分布式数据库时 , id易重复long(bigint)类型:性能高 , 比int类型容纳的数据更多 , 但是还是会重复String(varchar) : 使用UUID , 几乎不会重复 , 但是性能略低大型电商的数据库是分布式的么? 究其原因 , 数据库分布式设计就是为了提高数据库原创 2018-02-03 08:47:13 · 3966 阅读 · 0 评论 -
大数据互联网架构 tomcat集群配置时三个端口的作用
tomcat集群配置时三个端口的作用在配置多个tomcat时需要同时配置这三个端口 Connector用于监听请求protocol: http/1.1协议 , 用于监听浏览器发送的请求 , 设置成80后可以直接使用http://ip地址AJP/1.3协议 , 用于监听其他服务器发过来的请求connectionTimeout:连接超时时间redirectPort:如果发送的是h原创 2018-02-03 08:46:15 · 456 阅读 · 0 评论 -
大数据互联网架构阶段 数据库三范式与反范式
数据库范式一、 三范式主键: 创建表时可以不设置主键 , 但是没有设置主键的表 , 底层会认为所有的键都是主键 ,所以在创建时使用了所有的字段创建索引 , 在查询时索引的存在几乎没有意义 。 复合主键: 两个或两个以上的字段作为评价一条数据记录的唯一性标志 。 第一范式: 强调列的原子性 , 即:列不能分成几列只要是关系型数据库 , 就自然的遵循第一范式第二范式: 首先满原创 2018-02-03 08:45:17 · 3974 阅读 · 0 评论 -
大数据互联网架构阶段 Linux下安装mysql启动的常见问题
Linux下安装mysql启动的常见问题1.PID file could not be foundmysql无法启动ERROR! MySQL is running but PID file could not be found ?Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'解决办法:原创 2018-02-02 23:14:58 · 218 阅读 · 0 评论 -
大数据互联网架构阶段 Spring框架导致的406错误
Spring框架导致的406错误一、 分析当ajax发出请求(http://zxx.xxx.com/xxx.html后缀)实际是请求动态资源时 , .html后缀会让spring以为传递过来的请求时请求静态资源的请求 , 返回的内容将会被spring添加一些静态资源的条件或数据格式 。 ajax作为 一部请求 , 无法处理这些SpringMVC添加的静态资源格式的数据 , 会产生406错误 。原创 2018-02-02 23:13:36 · 210 阅读 · 0 评论 -
大数据WEB阶段 Maven与SSM框架整合
Maven整合SSM框架零、 目录Maven整合SSM常见的问题以及一些优化一、 Maven整合SSM创建webapp工程修改jdk和编译器配置pom.xml文件 并在pom.xml文件中添加tomcat插件pom.xml文件中一般需要使用的依赖<!-- 集中定义依赖版本号 --><properties> <junit.version>4.12</junit.version原创 2018-01-02 19:29:40 · 568 阅读 · 0 评论 -
大数据 互联网架构阶段 电商项目简介
电商项目简介零、目录电商项目特点电商项目技术难点电商项目简介开发工具电商项目架构开发环境一、电商项目特点分布式 数十台服务器,甚至百台、千台、万台,包括:Nigix负载均衡集群、Tomcat集群、Redis缓存集群、RabbitMQ消息队列集群、MySQL主从、Solr全文检索集群等。分布式集群 分布式:单个任务拆分成众多的子任务,单个实例完成其中之一,众多实例合作完成一个任务原创 2018-01-11 10:05:24 · 6661 阅读 · 0 评论 -
大数据WEB阶段(十五)JavaEE三大核心技术之过滤器
Filter过滤器一、Filter 过滤器概述Filter是JavaEE三大核心技术(Servlet 、 Filter 、 Listener)之一 FIlter作用是拦截对资源的访问 , 拦截下来后可以控制是否允许通过 , 或者在允许通过前后做一些额外的操作 。 所谓的拦截其实就是对代表请求的request、对象和代表 响应的response对象拦截下来 , 进行控制一个过滤器可能拦截多个原创 2017-12-11 21:51:55 · 1048 阅读 · 0 评论 -
大数据WEB阶段(六)MySql详解(二)
MySql详解(二)一、分组查询、数据库备份与恢复 、 外键约束 、多表设计、多表查询原创 2017-11-23 19:34:59 · 435 阅读 · 0 评论 -
大数据WEB阶段(九)Servlet+Request
Servlet与Request一、概述Servlet 是sun公司提供的一门用于开发动态web资源的技术按照这套规范写出来的servlet可以放置在web应用中在servlet容器中运行 。 开发servlet步骤写一个类实现servlet接口 , 并实现其中的方法在web.xml中为servlet配置对外访问路径案例:手写一个servlet: 1.在指定位置(如D盘)创建一个F原创 2017-12-03 11:55:25 · 526 阅读 · 0 评论 -
大数据WEB阶段(九)Myeclipse中配置Tomcat并发布项目
在myeclipse配置tomcat ,并将项目发布到tomcat中一、在myeclipse中配置tomcat二、发布项目到tomcat中注意项目名称是自己要发布的项目 , 然后finish 。在myeclipse中启动tomcat启动后即可在浏览器中访问servlet访问格式:http://ip地址:端口号/项目名称/web.xml文件中要访问的servlet的url-pattern原创 2017-12-03 10:28:20 · 414 阅读 · 0 评论 -
大数据WEB阶段Spring框架(二)简化配置的操作
Spring简化配置的操作零、复习IOC控制反转, 之前是通过new创建对象 , IOC是由Spring容器创建对象 , 需要用时getBean获取 。 导入约束文件获取对象两种方式 : 通过ID , 通过class获取创建对象的四中方式 构造方法静态工厂实例工厂Spring工厂scope 控制单例多例lazy-init 懒加载 默认情况是单例不懒加载对象的生命周期 i原创 2017-12-20 08:58:14 · 209 阅读 · 0 评论 -
大数据WEB阶段Spring框架(一)IOC控制反转、DI注入依赖
Spring-IOC、DI零、Spring简介Spring官网:http://projects.spring.io/spring-frameworkJar包的下载地址:http://repo.spring.io/release/org/springframework/springSpring框架的特点: spring的是一个轻量级的框架(减少侵入性,对容器没有依赖性,无需修改代码)spri原创 2017-12-20 08:57:12 · 299 阅读 · 0 评论 -
大数据WEB阶段 (六)MySql详解(一)
MySql(二)概述、mysql安装、卸载、配置与下载 、MySql相关命令、SQL语言 、SQL操作数据库的增删改查、SQL操作表的增删改查、SQL操作表记录的增删改查、MySql中的数据类型详解、数据库乱码 问题、where子句、排序查询、聚合函数、原创 2017-11-22 16:28:51 · 402 阅读 · 0 评论 -
大数据WEB阶段(十四)JavaEE开发模式
JavaEE开发模式零、目录开发模式发展历程MVC设计思想的出现JavaEE经典三层架构经典三层架构解耦一、开发模式发展历程Servlet是JavaEE开发中一种动态web资源开发技术 , 但是在做输出响应页面时及其繁琐 。JSP表面看上去像是Html , 但本质上是Servlet ,可以在其中插入java代码 , 所以也是一种动态web资源 , 他能更好的用于展示页面 , 也能处理一原创 2017-12-09 19:54:53 · 1176 阅读 · 0 评论 -
大数据WEB阶段(六)MySql 下载、安装、卸载与配置
MySql下载、安装、卸载与配置一、下载、安装、卸载与配置下载地址: 点击下载安装 注意事项:安装路径不能有中文和空格打开安装程序 配置环境变量Path 找到mysql的安装目录下的bin目录并复制,比如D:\software\MySQL\MySQL5.5\bin计算机右键->属性->高级系统设置->环境变量->系统变量中找PATH->编辑->变量值->在最前面加上路径,并以“;”分号原创 2017-11-21 20:11:27 · 325 阅读 · 0 评论