- 博客(54)
- 资源 (2)
- 收藏
- 关注
原创 soul源码阅读 soul插件之hystrix插件
hystrix插件根据官网的介绍,hystrix插件是网关用来对流量进行熔断的核心实现。查看代码可以发现,HystrixPlugin extends AbstractSoulPlugin AbstractSoulPlugin implements SoulPluginSoulPlugin 是一个接口,接口定义了4个方法execute,getOrder,named,skip。execute是执行方法,getorder是获取优先级,named获取的是插件名,skip方式是判断是否跳过该插件。Abs
2021-02-01 16:41:50 370
原创 soul源码阅读 soul数据同步之dubbo插件原理解析
alibabaDbubode的类图如下,继承了AubstactSoulPlugin类,实现了SoulPlugin接口SoulWebHandler->在SoulWebHandler.execute会循环查看pluginList。我发现soul的很多代码都会做循环查询,虽然说现在插件的数量并不多,循环 20次以内就可以解决,但是如果以后插件数量从10变成100,那这些大量的循环应该要优化才对。然后调用方法跳到了AbstractSoulPlugin.execute,非...
2021-01-28 08:00:23 257
原创 soul源码阅读 soul数据同步之divide插件
首先启动soul-admin,soul-bootstrap,以及soul-example-http。soul-example-http启动两个,用于实验负载均衡。然后修改流量权重。把端口8189的流量权重设为99,8188的权重设为1使用http访问网关进行转发可以发现基本上所有的请求都转发到8189的端口了通过修改规则并查看http请求,发现修改负载均衡请求的http地址是http://localhost:9095/rule/1349406507408502784...
2021-01-27 07:57:01 221
原创 soul源码阅读 soul数据同步之Admin集群
因为使用zk或者nacos天然就支持数据同步,所以我比较感兴趣的是怎么用websocket进行数据同步找了好久终于发现是这样搞的首先配置好port,这里我们配置两个,一个是9094,一个是9095。先启动一个,然后再启动另一个。如果要启动多个记得要按下图勾选,allow parallel run。然后就可以同时启动两个啦。接下来是启动bootstrap,如图配置两个websocket的地址。其实在WebsocketSyncDataService这个方法里面有这样一段代码.
2021-01-26 01:12:53 149
原创 soul源码阅读 soul数据同步之nacos
nacos的安装在官网明确写的很清楚,这里就不再赘述了。管理页面地址是http://localhost:8848/nacos记得登录用户名密码是nacos/nacos;启动nacos同步图1图2然后就死活搞不定,通过研究代码发现这里如果改为namespace的话就可以注册成功。我的nacos是拉取的master代码然后自己编译的,所以可以看看nacos的代码图3记得这里要配置和图1一样的namespace,这样就可以调通了。这里应该是验证的key?...
2021-01-24 01:08:50 167
原创 soul源码阅读 soul数据同步之http长轮询
启动项目修改两个配置文件,配置成htpp长轮询。不清楚的话可以先看我的第一篇启动的时候得注意,先得启动soul-admin,然后再启动soul-bootstrap,要不然会报服务找不到。源码分析HttpLongPollingDataChangedListener这个类看名字就在知道是http长轮询数据改变的监听器,查看该类的uml图发现如图3所示。图3在调试过程中发现每隔一分钟就会调用HttpLongPollingDataChangedListener.compareChan.
2021-01-23 06:53:18 790
原创 soul_admin之使用zookeeper数据同步
soul-admin修改成zookeeper的数据同步方式参考的是项目文档https://dromara.org/zh-cn/docs/soul/user-dataSync.html记得先启动zookeeper,我是使用docker启动的,端口是2181。1.在soul-bootstrap的pom.xml引入依赖<!--soul data sync start use zookeeper--> <dependency> <grou
2021-01-22 02:09:51 171
原创 soul源码阅读 soul数据同步之websocket同步
websocket 同步在soul-admin的application.yml文件的配置中,可以选择使用zookeeper,websocket,http长轮询三种策略做数据同步server: port: 9095 address: 0.0.0.0soul: database: dialect: mysql init_script: "META-INF/schema.sql" sync: websocket: enabled: trueso
2021-01-21 07:52:07 159
原创 soul_springcloud
1.访问admin,进入「系统管理 -> 插件管理」,设置 springCloud 插件为开启2.添加nacos依赖,打开nacos,发现当前无服务注册进来<dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
2021-01-20 07:58:48 149
原创 soul_sofa
今天研究soul_sofa相关插件运行启动启动TestSofaApplication后怎么都没有办法调通接口,后来上了官网看了一下文档,发现得在boostratp模块下的pom.xml文件添加以上的依赖,然后重启一下bootstrap就可以了! <dependency> <groupId>com.alipay.sofa</groupId> <artifactId>sofa-rpc-al
2021-01-19 06:42:30 196
原创 soul_dubbo
首先启动soul-bootstarp 和 soul-admin,zookeeper;zookeeper我使用的是docker命令如下:docker pull zookeeperdocker run --name zk -p 2181:2181 -p 2888:2888 -p 3888:3888 --restart always -d zookeeper启动zookeeper后就可以启动TestAlibabaDubboApplication,如果没有zookeeper就会报异常提示zo.
2021-01-17 07:22:01 183
原创 soul_example_http
任务运行examples下面的 http服务 结合divde插件,发起http请求soul网关,体验http代理 其实前一篇文章已经写了通过soul转发成功了,所以探讨一下soul的接口注册流程。数据库设计soul的数据库设计图1所示,该图为官网的图图1然后我们分别查询了 selector,selector_condition,rule,rule_condition表,如图2所示。可以看得到不同的selector和其数据。规则就是 一个插件对应多个选择器,一个选择器对应多...
2021-01-16 04:04:26 263
原创 soul源码阅读 启动soul应用
soul的官方文档地址:https://dromara.org/zh-cn/docs/soul/soul.html素质三连,watch,start,fork之后clone到本地,进行install编译,中间遇到的很坑的小问题,就是soul-example的maven文件无法识别,其实只有选中pom.xml然后右键,选择add as maven project就可以解决了。然后mvn clean install 编译整个maven项目即可。后台管理模块在soul-admin包下,记得修改你的数据库.
2021-01-15 01:15:10 704
原创 美女图爬虫小试
import errnofrom pyquery import PyQuery as pqfrom lxml import etreefrom urllib import request, parseimport reimport osclass meizi: def __init__(self): self.urls = [] self.head
2017-11-14 16:59:43 1057
原创 Centos7修改hostname
把hostname修改为calu hostnamectl set-hostname calu要想局域网别的主机可以通过calu而不是192.168.1.1之类的IP地址访问主机 则应该 vi /etc/hosts 然后在末尾添加192.168.1.7 calu01想要通过hostname直接互联则所有局域网内地的主机都必须加上
2017-07-26 13:22:56 614
原创 hbase中出现的java.net.BindException-Problem binding to 111.175.221.58 60020
2017-07-24 16:45:17,174 DEBUG [main] regionserver.HRegionServer: regionserver//111.175.221.58:60020 HConnection server-to-server retries=3502017-07-24 16:45:17,522 INFO [main] ipc.SimpleRpcScheduler:
2017-07-26 13:21:49 2049
原创 nutch2.3 hadoop2.6.0 hbase0.98.8 分布式爬虫NoClassDefFoundError HBaseConfigurati
nutch2.3 hadoop2.6.0 hbase0.98.8 分布式爬虫NoClassDefFoundError: org/apache/hadoop/hbase/HBaseConfiguratiException in thread "main" Java.lang.NoClassDefFoundError: org/apache/Hadoop/Hbase/HBaseConfigurati
2017-07-26 13:21:03 526
原创 hadoop,hbase集群一些问题
Operation category READ is not supported in state standby解决 hdfs写的那台机器是待机状态的,所以不支持,要在active 机器中写才行。 hdfs haadmin -transitionToActive –forcemanual nn1 再次访问就变一active,一个standyHMaster自动关闭 —-问题解决思路:j
2017-07-26 13:19:24 538
原创 zookeper安装问题
启动zookeeper后日志显示找不到路由 日志在bin文件夹下的zookeeper.out里 解决方法: 关闭防火墙:systemctl stop firewalld.servicesystemctl disable firewalld.service查看状态:firewall-cmd --state不同版本linux关闭防火墙Ubuntu(ubuntu-12.04-desktop-amd6
2017-07-26 13:18:32 626
原创 hadoop内存不足
问题 Container killed on request. Exit code is 143然后提示memory 2.7g in 2.1g used 这里是表示内存不够,所以修改hadoop/etc/hadoop/mapred.site<property> <name>mapreduce.map.memory.mb</name> <value>4096</value>
2017-07-26 13:17:08 1639
原创 nutch2.3分布式搭建
首先搭建hadoop集群。参看之前的文章: https://note.youdao.com/share/?token=6B7AD80F6F904C1982B92E03C61B637C&gid=30499526首先把/hadoop/etc/hadoop下面的几个文件复制到/nutch-2.3.1/confcore-site.xmlhadoop-env.shhbase-site.xmlhdf
2017-07-26 13:16:04 1339 1
原创 hadoop单机安装配置
1.安装jdk2.安装hadoop3.添加hadoop的环境变量4.初始化HDFS5.启动hadoop6.为了免密码登录要配置ssh7.datanode 未启动1.安装jdk在java官网http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads
2017-07-26 13:14:14 402
原创 solr6.5安装教程
网上很多教程,但是呢,很多人写的很水,因为很多人都是抄袭的,根本就没有自己做过,有什么问题都不清楚。所以我在这里就写多一篇,如果大家觉得有用就看看吧,没用的话我就当是自己的笔记。
2017-06-16 13:17:36 1490
原创 ArrayList add方法
今天在做项目的时候,用了ArrayList数组,然后发现ArrayList的内容居然一样。原来Add方法不恰当使用会覆盖前一个内容的值。在这里记录一下。 ## 错误的做法 ##public void wrong(){ User user = new User(); List<User> list = new ArrayList<User>(); for(i=0;i<10;i
2017-06-16 08:52:30 19937 3
原创 关键词标记
关键词标记 最近在做一个微信过滤的后台程序,设计的主要目的不是屏蔽你的消息,而是记录你的行为,别的就不能再说了! 平时的脏字过滤是把“你麻痹”替换成“你**”,而我的功能是标记出来,把“你麻痹”标记成“<#>你麻痹</#>”这样子,所以在做的时候遇到了不少的问题。
2017-06-07 20:18:37 771
原创 Java引用传递和值传递
其实很多时候会遇到值传递,在C语言中还好,可是到了Java中一开始就有点不习惯。然后先按照自己的理解写写吧。值传递的话就只是把数值复制过去,而引用传递就好像是指针指向了同一个地方一样。值传递的话交换不了数值。引用传递的话,指向的A对象就好像是一个全局变量吧,然后在调用的swap函数以后,全局变量的数值就变了。暂时是这么理解,过几天看了java编程思想再写值传递public clas
2017-03-10 01:08:15 438 1
转载 js获取数组元素个数和对象成员数
http://www.51-n.com/t-4080-1-1.htmlJavascript怎么得到数组长度(也就是数组的元素个数)?Javascript怎么获取对象的成员个数?你肯定想到了array.length!? 那么我们来测试一下下面这个例子. var a = []; a[50] = 50
2016-08-01 03:41:19 32191 1
原创 为什么要少用Iframe
iframes 提供了一个简单的方式把一个网站的内容嵌入到另一个网站中。但我们需要慎重的使用iframe。iframe的创建比其它包括scripts和css的 DOM 元素的创建慢了 1-2 个数量级。 使用 iframe 的页面一般不会包含太多 iframe,所以创建 DOM 节点所花费的时间不会占很大的比重。但带来一些其它的问题:onload 事件以及连接池(connection
2016-06-13 23:24:32 486
原创 apicloud 心得 绝对路径
已经使用apicloud 开发app三个星期了!学了半桶水的html就上项目了!其实感觉不是很好!因为不会ajax,不会jquery 不会 高级的js。就是匆匆忙忙的就上了!然后就不知不觉的用了jq!然后又不知不觉的用js封装了函数,然后就写出了属于自己的jq。其实如果全部会使用apicloud的好原生函数的话是非常好的。他封装了一堆函数可以让人调用。今天用api.getpic
2016-06-02 22:36:57 8381 5
原创 大数阶乘
#include int main() { int n; int a[9000]; //确保保存最终运算结果的数组足够大 int digit = 1; //位数 int temp; //阶乘的任一元素与临时结果的某位的乘积结果 int i,j,carry; //进位 printf("please in put n:\n"); scanf("%d",&n);
2014-03-20 22:58:03 642
原创 求两个数的公约数有多少个
题目描述:给定两个正整数a,b(1如给定正整数8和16,他们的公约数有:1、2、4、8,所以输出为4。输入:输入包含多组测试数据,每组测试数据一行,包含两个整数a,b。输出:对于每组测试数据,输出为一个整数,表示a和b的公约数个数。样例输入:8 1622 16样例输出:4 2这题并不难,关键是它卡时间。所
2014-03-04 16:34:15 2789
原创 九度oj1526 小米招聘会题目
很简单的一道并查集题目!不过前提是要会并查集!!并查集 这里有讲#include #include #include #include #include using namespace std;int father[100005],a,b,m,n,i;int find(int x){ if (father[x]!=x) f
2013-12-06 15:30:20 983
原创 hdu2817 A sequence of numbers
这题就是判断是等差数列还是等比数列,然后计算结果mod200907 因为数字比较大10的九次方所以等比用到了快速幂求模不懂可以看看算法导论,在大数那里有讲#include #include #include #include int modPow(__int64 x,__int64 y) //计算x的y次方求余 快速幂不懂可以百度{ __i
2013-12-02 19:53:28 1039
原创 zoj 3733 Skycity 长沙赛区
这题真是做的让人火大。是我的英语水平还不够好么???题目是求一共需要多少面积的玻璃(最小)比赛时一直A不出来,老是有100多的差值这题确实难懂,阅读理解。 #include #include #include using namespace std;const
2013-11-27 14:11:07 1217
原创 hdu1963 教你如何从有钱人变更有钱的人
股票可以无数次买,所以完全背包问题太简单了,就不打注释了;#include #include #include #include using namespace std;int max(int a,int b){ if(a>b)return a; else return b;}int main(){ int n,i,j,f[200000],m,w[
2013-11-19 18:01:10 1811 2
原创 hdu1284经典钱币兑换问题
钱币兑换问题。完全背包。这种是求背包问题最多的组合方案#include #include #include #include using namespace std;int dp[32768];int main(){ int n; while(~scanf("%d",&n)) { int i,j;
2013-11-18 20:54:59 1005
原创 hdu1114小猪抢劫银行
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1114完全背包题意:给出小猪钱罐的重量和装满钱后的重量,然后是几组数据,每组数据包括每种钱币的价值与重量,要求出重量最少能装满钱罐时的最大价值#include #include #include #include using namespace std;int f[10000
2013-11-17 22:55:55 1080
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人