- 博客(191)
- 资源 (2)
- 收藏
- 关注
原创 创建微信小程序 一
整理几篇对于小程序操作的笔记。小程序提供了一个简单、高效的应用开发框架和丰富的组件及API,帮助开发者在微信中开发具有原生 APP 体验的服务。这是一个可以免安装,微信环境下运行的简单程序体验。其实大部分的东西都可以看官方文档就知道的明明白白了。官网文档起步没有接触过小程序的人,还没有被领进门,所以多少有些摸不着头脑,需要一篇直白的入门文档,所以在这里我简单记录下我当时是怎么入...
2019-08-29 16:06:15
606
原创 mycat实现读写分离
mycat是什么?为什么用mycat?可以理解成一个开源的分布式数据库系统,代替昂贵的Oracle,为mysql实现企业级的数据库。支持mysql、SQLserver、Oracle等主流数据库,无论是那种存储方式,在MyCat里,都是一个传统的数据库表,支持标准的SQL语句进行数据的操作,这样一来,对前端业务系统来说,可以大幅降低开发难度,提升开发速度。mycat架构安装和使用...
2019-08-29 12:14:28
393
原创 分布式系统中Session共享问题
在有高并发系统中,分布式构建系统有时会遇到一个问题:Session共享问题tomcat可以配置Session复制,每一个节点1、session保存在哪里在浏览器Cookies中保存,一个key-value形式的数据。2、sessionid和tokensessionid是客户端请求服务端的时候,服务端通过 set cookie就可以在http头里面这个sessionId设置key...
2019-08-29 10:28:44
630
原创 《计算机网络原理》问答
网络概述问:协议三要素是什么 语法:实体间交换信息的格式 语义:实体间交换信息需要哪些控制信息 时序:交换信息的顺序,以及彼此要适配的发送接收速度问:报文交换和分组交换及电路交换有什么区别?各有什么特点。 电路交换:独占一条信道,经历建立电路、传输数据、拆除电路三个阶段,经过单工或全双工传输数据,实时性好,...
2019-04-16 10:39:32
4015
2
原创 前后端之代码检测
我们写代码的时候触发强烈按照代码规范来执行,否则稍有不注意就会在哪里,写的代码有欠缺,并且在团队开发中为了统一大家书写规范避免一些不必要的规范冲突,提高代码的可维护性,所以引入代码检测工具非常重要,现在越来越多的工程,使用前后端分离的技术,前后端的地位一样重要。前端代码质量检测工具选择HTML / tpl:HTMLHintCss/scss:StyleLintJavaScri...
2019-02-28 11:09:32
4429
1
原创 了解RPC框架,你是否能写一个简单的RPC
概念RPC(Remote Procedure Call)远程过程调用,通过网络通信调用不同的服务,让在不同服务器上的服务,共同支撑一个软件系统。使用RPC可以方便将服务分开解耦,而且根据不同划分粒度,方便维护,同时很多服务都能够复用,这样就增加了系统处理业务的能力。在分布式服务框架中,web可以调用不同的服务。这些服务可能都部署在不同的服务器上,他们的代码是不再一起的,RPC起...
2019-01-06 20:49:25
618
1
原创 【问题】每次打开sublime text 3 都会有这样的提示Error trying to parse file
每次打开sublime text 3 都会有这样的提示Error trying to parse file: Unexpected character, expected a comma or closing bracket in Packages\User\Default (Windows).sublime-keymap:2:9 解决:1、进入sublime,然后Preferen...
2019-01-06 19:38:46
11256
14
原创 服务治理:Dubbo+ZK 出现的问题-
服务发布/发现问题1:提供者的ip注册到zk上,ip地址不正确原因:是服务器有多个网卡,解决的办法就是在配置dubbo时,把host指定上:<dubbo:protocol host="192.168.xx.xx" name="dubbo" port="20880" />问题2:本地服务注册到服务器dubbo上,注册、消费者调用成功,在dubbo上的IP是本机ip;...
2019-01-06 19:35:59
2447
1
原创 Dubbo原理
先懂几个概念SPISPI 全称为 Service Provider Interface,是一种服务发现机制。SPI 的本质是将接口实现类的全限定名配置在文件中,并由服务加载器读取配置文件,加载实现类。这样可以在运行时,动态为接口替换实现类。正因此特性,我们可以很容易的通过 SPI 机制为我们的程序提供拓展功能。SPI 机制在第三方框架中也有所应用,比如 Dubbo 就是通过 SP...
2019-01-06 15:31:50
1444
原创 注册中心zookeeper
Zookeeper 分布式服务框架是Apache Hadoop 的一个子项目,由Yahoo构建,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master 选举、配置维护、分布式同步、分布式锁和分布式队列 等功能。ZooKeeper的目标是将这些不同服务的本质提炼成一个非常简单的接口,以实现集中的协调服务。服务本身是...
2019-01-05 21:32:57
2230
原创 Dubbo+ZK安装单机版
安装前了解:dubbo和zk是用来做服务治理的,在分布式系统中,动态进行服务发布和服务发现,作为一个向全栈方向发展的媛,有必要了解Dubbo和ZK的安装过程。因为Dubbo是Java语言开发,所以需要做一些环境准备工作,在安装Dubbo之前,检查是否安装了JDK,Tomcat用来启动Dubbo,也要安装#检查jdk是否安装java -version#检查tomcat是否安装#...
2019-01-05 19:09:07
745
4
原创 服务治理之Dubbo调用过程,zookeeper注册
Dubbo是怎么用的?对于官网上Dubbo架构理解:5大角色:Provider: 提供者:暴露服务;Consumer: 消费者:消费服务;Registry: 服务注册与发现、通知的注册中心;Monitor: 统计服务的调用次数和调用时间的监控中心;Container: 服务运行容器。流程:123是初始化init,46是异步async ,5是同步操作sync...
2019-01-05 17:14:25
1928
3
原创 理解服务治理
为什么不是服务管理,而是服务治理?治理意味着建立和执行工作组为了一起工作而一致同意的工作指南。治理重在建立决策,而管理重在贯彻执行决策。 怎么理解服务治理?服务治理发展过程:开始是单体服务,随着业务和访问量增大,架构发生变化,垂直划分,达到解耦和的目的。但是随着应用的进一步增加,也就是引入SOA,出现了服务相互调用的情况,这个时候可以使用简单的RMI或RPC,通过配置服务的UR...
2019-01-05 14:19:54
8982
1
原创 Redis缓存之穿透、雪崩、热Key问题
高并发的情况会给系统带来很高的访问流量,这就给存储这些热点信息的Redis数据造成了一些压力。热key问题及解决方案产生原因用户消费的数据远大于生产的数据 (热卖商品、热点新闻、热点评论、明星直播)等。在日常工作生活中一些突发的的事件,例如某明星突然宣布恋情,导致某新闻点击量瞬间变大,请求远超过对数据的写入。就会造成热数据问题。我们 一般采用缓存 + 过期时间的策略来帮助我们加...
2018-04-27 20:09:05
5451
2
原创 Redis持久化
Redis虽然是基于内存的存储系统,但是它本身是支持内存数据的持久化的,而且提供两种主要的持久化策略:RDB快照和AOF日志。而memcached是不支持数据持久化操作的。RDB方式在指定的时间间隔内生成数据集的时间点快照,例如一天24小时,每个小时进行一次备份。RDB 非常适用于灾难恢复(disaster recovery):它只有一个文件,并且内容都非常紧凑,可以(在加密后)将...
2018-04-27 19:05:01
260
1
原创 Redis基本数据类型
redis是现在非常流行的内存高速缓存数据库,Redis全称为:Remote Dictionary Server(远程数据服务),由一个意大利工程师使用C语言编写的Key-Value存储系统。使用缓存数据库能够减少对数据库访问的压力,在高并发的时候会显得尤为重要。那么在多种缓存数据库中选择哪一种更适合呢?和memcache对比如果需要缓存能够支持更复杂的结构和操作,那么Redis会是不错的选择;使...
2018-04-27 18:03:08
415
原创 Java--类加载机制
在上一篇中,有少少的介绍了一下类通过反射的一个加载过程,作为一个开发Java的媛,对于类加载机制还是要有些了解的,先问几个问题:Java中加载类的工作谁来做?加载过程包括什么?类能加载,那对象呢?1、Java中加载类的工作谁来做?Java虚拟机,将静态字节码文件.class加载到内存中。2、加载过程包括什么?类的加载过程,也可以称为类的生命周期,包括加载(Loading)、验证(Verificat...
2018-04-26 19:52:25
263
原创 Java--getClass()和.Class的区别
复习下反射。在程序运行时期动态获得对象类型信息的操作,对比传统编程和反射的区别。传统编程:在编译阶段决定使用的类型反射:动态获得类型每个类都会产生一个对应的Class对象,也就是保存在.class文件。所有类都是在对其第一次使用时,动态加载到JVM的,当程序创建一个对类的静态成员的引用时,就会加载这个类。Class对象仅在需要的时候才会加载。类加载器首先会检查这个类的Class对象是否已被加载过,...
2018-04-26 17:14:05
10726
原创 计算机网络总结
一年一度的盛典——计算机网络考试,已经落下帷幕,再多的辉煌都会冲刷,再多的遗憾都会被遗忘。谨以此篇,记录当下,在未来的路上,能够有勇气,让自己变的更好。1、课本课本的内容,是按照自底向上的顺序进行,第一章第二章介绍网络的发展背景,和网络为什么要按照从物理层、数据链路层、网络层、传输层、应用层(TCP/IP)这样划分。三四五六七章分别就网络分层展开来讲,里面都有哪些具体的内容,并且针对网络通信,他们...
2018-04-16 14:46:04
415
2
原创 解决使用码云每次都要输入用户名密码
开发者向代码托管平台写入代码时,最常使用的协议是SSH协议,因为 SSH 协议使用公钥认证,可以实现无口令访问,而若使用 HTTPS 协议每次身份认证时都需要提供口令。使用 SSH 公钥认证,就涉及到公钥的管理。一、码云创建ssh公钥1)生成生成ssh公钥,跟着步骤执行这些命令:ssh-keygen -t rsa -C "xxxxx@xxxxx.com" 将邮箱替换成码云注册邮箱。回车三次即可生...
2018-03-05 20:26:40
18116
2
原创 2018是2017的延续
有些东西的存在,不会是无缘无故的,他都是有一个引子,一种趋势的形成,也是在很久前,通过各种现象,行为的积累,然后由稚嫩到成熟的变化。2018今年不是新的开始,而是2017定好的计划一个执行延续的一年。2017年回顾看了2017年初的计划,觉得自己还是很厉害的,最起码一年的计划,基本上都实现了,并且有的超出了自己的想象,而且在这个过程中,还有做了很多计划之外的东西《2016,轻轻
2018-01-26 12:31:12
488
2
原创 如何关闭CSDN右下角的小广告
纯属无聊,年前给自己挖了几个坑,有几篇博客要写,但是不知道怎么回事CSDN广告不能被去广告插件拦截,而且手动也关不掉,就这么点屏幕,被广告死死占据一块,很麻烦。右下角出这种各种有的没有的广告,烦都烦死人了,还占地方。想着怎么去掉这些广告1、去广告插件不论是使用Chome、firefox、360还是其他浏览器,都会有一些去广告插件可以选择,例如adblock、广告拦截等等
2018-01-24 20:31:15
3061
4
原创 Web前端工程化之VSCode+Git 解决冲突和error
多人协作开发使用版本控制难免会有冲突,在前端使用VSCode和Git过程中,就会遇到大大小小的冲突,有的merge一下,然后提交推送就可解决,有的是因为HEAD指针混乱造成,本地和远程分支拉取/合并问题。问题1、直接解决冲突 出现这种情况的原因是,A、B两个人同时操作了一个版本(HEAD)文件,工具不知道选择哪一个,这样就会报冲突。使用当前|使用传入
2018-01-01 18:57:45
35030
4
原创 web前端工程化之VS code版本控制工具Git和SVN安装
VSCode本身就是一个文本编辑器,非常轻量级,搭配各种插件的话,就可以重现Visual Studio的强大功能。一、VSCode使用Git进行版本控制参考小编另外一篇博客进行git基本配置1、关联vscode和git打开vs_code,然后文件 >首选项 > 设置,然后添加"git.path"键,值为Git目录下的cmd下的git.exe文件。如: "git.pa
2017-12-31 17:56:11
13336
原创 web前端工程化之VS Code调试
开发完了,避免不了要使用工具进行调试,其实对于有经验的人来说,怎样调试,用什么工具调试,都只是些细微的差别。用什么工具都可以做这件事情。那使用vscode怎么调试呢。 从后端开发熟悉debug之后,前端会有点点不习惯,但是没有关系,做一次就明白怎么回事了。1、vscode启动 我使用过的前端有angular和ionic,使用不同的前端框架,启动的方...
2017-12-31 17:55:10
1597
原创 web前端工程化之数据绑定
这篇博客我放了好久都没有来补充了,是因为那时候做前端,有很多东西很迷糊,这些名词都是新的,经过这么长时间 的沉淀,这些名词就不再是不熟悉的,而是每个页面都在使用的。 先来了解一下前端基本结构包括:page.html、page.scss、page.ts我们的页面就是写在html中,页面样式写在scss中,函数方法写在ts中。这个和js很像,其实ts就是封装的js...
2017-12-31 17:52:29
1552
原创 web前端工程化之依赖注入
传统依赖控制,由使用者自己new 依赖注入控制器从内部转到了外部注入器 把service注入到product1中,在app模板中使用product1serviceModuleProduct1Product1.htmlApp.htmlProduct2 效果在s
2017-12-31 17:50:59
1042
原创 web前端工程化之路由
控制视图应用状态的对象调试阶段,更新组件和路由的时候,需要重新运行,浏览器更新是没有效果的,只有静态页面的更新能够被刷新出来。路由的5个对象Routes,path中不加/RouterLinkRouter对象在app.component.ts中,通过构造函数创建,然后在事件中调用导航 效果: —
2017-12-31 17:50:06
410
原创 Web前端工程化之Angular组件
1、组件概念 如何理解组件,可以帮助你如何理解前端工程化,就是把页面上显示的内容,划分成一个个的组件,组合到一起就变成了我们熟悉的网页。看一下下面这个百度页面,怎么划分,可以从head、body、footer分三部分,在大的组件上还有小的组件,然后经过一层层组件嵌套。这就是一个页面的主要组成部分。2、开发准备工作:先引入包:
2017-12-31 17:48:47
703
原创 前端工程化之Nodejs+Angular+webStorm+VSCode安装与配置
angular是在nodejs基础上运行的,所以先安装nodejs。安装Nodejs在官网上下载 合适的版本下载node-8.9.0-x64.msi一路下一步,直到安装完成请先在终端/控制台窗口中运行命令 node -v 和 npm -v, 来验证一下你正在运行 node 6.9.x 和 npm 3.x.x以上的版本。 更老的版本可能会出现错误,更新的版
2017-12-31 17:47:12
1451
原创 Linux下JDK安装并配置环境变量
最近又到了公司项目发布部署的季节,各种环境都在重新部署安装,总结一下,项目上线前,环境准备情况:以下是在Linux下安装jdk的相关配置1、Winscp和xshellwindows和linux连接的工具和操作工具安装这两个工具,然后连接服务器,需要服务器的ip地址和用户名及密码,即可成功;2、官网下载jdk8,找到对应服务器的版本,X86是32位,X64是64位下载的是文件可以使用winscp工具...
2017-12-20 16:54:38
416
原创 MySql+Mybatis+Druid之SqlException:sql injection violation, multi-statement not allow
接上一篇博客:《数据库优化之MyBatis批量删除、更新》Druid是阿里巴巴,开发的一个数据库连接池工具,经历过多次双十一的洗礼,它的性能已经能够满足国内大多数项目的需求。项目中启用Druid的统计管理,在执行批量修改时:提示Error updating database. Cause: java.sql.SQLException: sql injection violation, m
2017-12-11 18:32:48
15268
3
原创 MySql+Mybatis+Druid 优化之MyBatis批量删除、更新
业务需求:一次更新/删除多条数据,通常有两种方式: (1)在业务代码中循环遍历,逐条删除,业务清晰(2)在sql语句中,循环删除,只操作一次数据库,这个分为两种方式:方式A:通过循环一个id列表,循环删除数据;方式B:条件为多个字段,为了更新多条记录为多个字段的不同值补充:这里的删除采用软删除,使用一个字段进行标记,所以所有的删除实际就是更新
2017-12-11 17:04:14
8570
原创 web前端工程化浅析
目前来说,Web业务日益复杂化和多元化,前端开发已经由以WebPage模式为主转变为以WebApp模式为主了。现在随便找个前端项目,都已经不是过去的拼个页面+搞几个jQuery插件就能完成的了。工程复杂了就会产生许多问题,比如:如何进行高效的多人协作?如何保证项目的可维护性?如何提高项目的开发质量?... 前端工程化就在这个快速发展的时代下,应运而生,它存在的目的就
2017-12-02 17:15:16
5941
2
原创 Git的工作原理
Git分层操作 git的工作总共分四层,其中三层是在自己本地也就是说git仓库,包括了工作目录、暂存区和本地仓库。工作目录就是我们执行命令git init时所在的地方,也就是我们执行一切文件操作的地方;暂存区和本地仓库都是在.git目录下,因为它们只是用来存数据的。远程仓库在中心服务器,也就是我们做好工作之后推送到远程仓库,或者从远程仓库更新下来最新代码到本地。Git所存储的
2017-11-29 10:28:56
11330
原创 .git文件夹详解
在git 克隆代码之后,还不能直接使用git,而需要初始化git,它会自动创建git仓库需要的目录。这些文件存在于项目下的.git文件夹下。.git文件夹是git init后在当前目录生成的一个管理git仓库的文件夹,这里包含所有git操作所需要的东西,如下图:hooks(钩):存放一些shell脚本Info:exclude:存放仓库的一些信息logs:保存所有更新的引
2017-11-28 12:33:07
68239
6
原创 有道云笔记同步不了
出现了好几次,有道云不能同步的情况,这里小记一下解决方法!1、打开任意一个浏览器,打开配置;2、Internet选项,打开;3、高级
2017-11-27 15:51:06
10597
1
原创 IDEA+Git 解决冲突
接上一篇博客解决冲突问题1:小博本地没有忽略.idea文件夹下workspace.xml文件,但是.xml文件已经被git追踪,造成分支合并失败解决:依次执行git rm -rf .ideagit commit -m "delete .idea"git push在.gitignore文件中加入.idea/*:最终按照步骤提交代码即可问
2017-11-27 15:37:20
9556
2
原创 git多人协作开发
工作中多人使用版本控制软件协作开发,常见的应用场景归纳如下:假设小组中有两个人,组长小玲,组员小博场景一:小玲创建项目并提交到远程Git仓库场景二:小博从远程Git仓库上获取项目源码场景三:小博修改了部分源码,提交到远程仓库场景四:小玲从远程仓库获取小博的提交场景五:小博接受了一个新功能的任务,创建了一个分支并在分支上开发场景六:小博把分支提交到远程Git仓库场景七...
2017-11-27 15:29:48
6607
4
原创 IDEA配置Git
IDEA配置Git注册github或者码云,二选一,两个都是代码托管平台,一个是国外一个国内的。idea设置gitCtrl+Shift+s(File-->Setting)->Version Control-->Git-->Path to Git executable选择安装的git.exe文件,点击Test,测试设置成功如下:idea中设置github在官网上注
2017-11-27 15:14:42
5312
1
四级考试准备
2016-09-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人