自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Frank's Blog

welcome to access shufanhao.top

  • 博客(94)
  • 资源 (13)
  • 收藏
  • 关注

原创 读Go语言精进之路

Go语言中接口与实现之间是隐式的,实现者仅需实现接口方法集中的全部方法,便算是自动遵守了契约,实现了该接口。接口的方法数量尽量控制在1~3个。接口越小,抽象度越高,被接纳度越高易于实现和测试。契约职责单一,易于复用组合。

2023-01-12 17:26:57 324

原创 用Tinyproxy搭建自己的proxy server

Tinyproxy 是一个轻量级,跨平台,开源的,同时支持http/https两种方式代理。

2022-12-03 23:35:17 414

原创 Tableau 入门系列之各种图形绘制

Tableau 是一个可视化分析平台,它改变了我们使用数据解决问题的方式,使个人和组织能够充分利用自己的数据。Tableau提供了非常丰富的图表,通过及其强大的功能,使得数据的可视化极其容易。Tableau,至少是我遇到最强大的可视化平台。

2022-12-01 23:17:35 267

原创 一文搞定centos VM 在MAC M1 安装

自从买入Macbook M1 之后,在MAC上安装centos虚拟机一直是想尝试的事情。最近,virtualbox 的最新的beta 版本说是已经支持在m1上运行,结果今天测试了一下发现并不work。然后就折腾其他方案,终于work了。本文描述的是通过UTM + centos9 实现在Mac M1上启动centos VM。

2022-11-03 14:59:58 574

原创 大数据入门之Presto/Trino

Presto是由Facebook开发的分布式sql查询引擎,用来进行高速、实时的数据查询。

2022-10-05 16:04:32 1184

原创 大数据入门之Sqoop

用于在Hadoop和传统的数据库(Mysql, Postgresql)进行数据的传递。可以通过Hadoop的MapReduce把数据从关系型数据库中导入到Hadoop集群。传输大量结构化或半结构化数据的过程完全是自动化的。sqoop的导入进程是一个自动生成出来的java class,因此它的很多组件都可以自定义,比如导入的格式、文本的格式、到出的格式等等。

2022-10-05 15:25:37 477

原创 大数据入门之 Hadoop,HDFS,Hbase,Hive

Hadoop:是泛指大数据生态,实际上基本包括 存储(HDFS) + 计算(MapReduce);HDFS: Hadoop分布式文件系统,主要是解决存储的问题;Hbase: 基于Hadoop的高性能nosql数据库;Hive: 最常用的数据仓库;

2022-10-03 23:00:29 1247 2

原创 思考的技术- 读书笔记

我只是想提醒大家,不管选择什么样的人生,在新世界里,懒于求知的人将没有生存的空间。世上没有毁于用脑过度的人。比别人多花两倍时间思考的人,就可以拥有十倍于别人的收入。比别人多花三倍时间思考的人,就能比别人多赚百倍的利润。个人思考: 思考力的差距,决定了收入,越是深入思考,越能带来超额的收益。培养孩子,一定是不能只培养成一个会考试,不会思考的人,拥有独立思考的能力是非常重要的。如书名《思考的技术》一样,全书一直围绕如何思考进行论述。

2022-09-18 21:49:49 241

原创 宏观经济学通识课-读书笔记

学习宏观经济学可以帮助研判宏观大势,辨识经济周期,避免损失。研判宏观大势主要看历史趋势、发展阶段、地缘政治、国家体制和机制、人力资本、自然禀赋与文化。这种判断需要我们集中 注意力在主旋律上,而不是短期插曲上,我们应从当下热点事件中 识别出会影响大趋势的事件。辨识经济周期非常重要,但难在如何辨识。学习宏观经济学可以让我们注意到一些关键数据,同时理解那些重大事件是如何影响整体经济的,以及这种影响的整个链条是如何衔接的。

2022-09-04 23:14:42 610

原创 比亚迪唐DMI购车经验分享

提车后,在市区开过也开过高速,总体而言,还是比较符合预期。高速上,馈电油耗在7左右。平时,在家附近开开,基本是纯电,我是用ECO模式,纯电是真省钱。吐槽的点是,过减速带,比较晃。第三排座椅,因为没有空调,夏天比较热。......

2022-07-24 22:57:01 2068

原创 Angularjs ng-table的使用(可以加button)以及angularjs学习资料

题记:现在做的这个项目,前端框架用的是angularjs,所以就又学习起来了。说下最近的近况,最近小论文已经写完了,但是还没有找老师看,想尽快投出去,另外工作现在网易应该是跪了,其他的还没开始投起来,发现华为在济南有研发岗位,争取可以到济南研发岗,另外也希望公司这边可以留下,现在每天在公司code,都没有时间好好准备一面试,一定要在有空的时候,好好看下java的设计模式,多线程,文件流以及网络方面

2022-05-29 23:39:15 199

原创 Modbus协议简单总结

1.Modbus协议简介MODBUS是法国MODICON(莫迪康)公司最先倡导的一种通讯规约,经过大多数公司的实际应用,逐渐被认可,成为一种标准的通讯规约,只要按照这种规约进行数据通讯或传输,不同的系统就可以通讯。目前,在RS232/RS485通讯过程中,更是广泛采用这种规约。当在Modbus网络上通信时,此协议决定了每个控制器须要知道它们的设备地址,识别按地址发来的消息,决定要产生何种行

2022-05-29 23:35:32 526

原创 用Vercel建站GitHub Pages 并配置DNS

通过vercel解决国内访问GitHub Pages 慢以及baidu不能爬github pages的问题。

2022-05-29 14:10:12 839 2

原创 hexo + github pages 创建你的个人博客

欢迎访问: https://shufanhao.github.io为什么要创建自己的博客自己的博客是写在CSDN,shu-frank的专栏。但为什么还要自己setup blog 呢?有一个自己定制的Website不爽么。学习下Hexo + github pages可以写点防止被墙的文章。hexo参考Stunhexo 安装创建 github pages 和创建普通的 github 仓库没太大区别(记住仓库名称是 username.github.io)。以下安装基于 mac。安装 n

2022-05-02 23:12:28 109

原创 如何高效处理分析大文件

题记:我们可能会遇到需要对一个很大的文件的某一行进行去重,排序,或者对两个文件进行合并等。本文主要测试了几种不同的方案,并进行比较。场景: 对4百万数据的CSV文件进行去重测试环境:MacBook ProIntel Core i9 16GB Memory测试文件:# total lines$ wc -l test.csv42013405 test.csv$ ls -lh test.csv-rw-r--r--@ 1 haofan staff 448M Nov 6 22:.

2021-11-07 17:19:17 1507

原创 Mac 定时自动发送邮件

文章目录WhyHow1. 在automator中创建application2. 创建calender 自动定时发送email3. 自行测试ReferWhy工作中,有时需要发送固定格式的email,每次人工做,比较繁琐,本篇博客描述了一种可以自动定时发送email的方式。下面例子中用的Mac自带工具有:automatormailcalendarHow1. 在automator中创建application关于Mac 自带的automator不懂的,自行百度。打开automator 并且

2020-09-20 21:51:19 4753

原创 Spinnaker 初探

1 Spinnaker 是什么Spinnaker 是 Netflix 的开源项目,是一个持续交付平台,它定位于将产品快速且持续的部署到多种云平台上。Spinnaker 通过将发布和各个云平台解耦,来将部署流程流水线化,从而降低平台迁移或多云品台部署应用的复杂度,它本身内部支持 Google、AWS EC2、Microsoft Azure、Kubernetes和 OpenStack 等云平台,并且...

2019-12-09 17:27:17 261

原创 理解k8s 网络模型

TODO 翻译:比较好的文章:https://sookocheff.com/post/kubernetes/understanding-kubernetes-networking-model/

2019-06-17 19:36:45 473

原创 Container Runtime 如何用CNI

翻译:https://karampok.me/posts/container-networking-with-cni/TODO:

2019-06-02 21:34:33 1191

原创 K8S Runtime CRI OCI contained dockershim 理解

在docker/k8s时代,经常听到CRI, OCI,contained和各种shim等名词,看完本篇博文,您会有个彻底的理解。典型的K8S Runtime架构从最常见的Docker说起,kubelet和Docker的集成方案图如下:当kubelet要创建一个容器时,需要以下几步:Kubelet 通过 CRI 接口(gRPC)调用 dockershim,请求创建一个容器。CRI 即容器...

2019-06-02 21:33:04 6237 6

原创 详解一次完整的数据包传输过程 -- 层层递进

文章目录例子 PC1 发送http请求到ServerStep1: PC1封装数据包Step 2: 数据到达集线器Step3: 数据到达R1Step4: 数据到达R2Step5: 交换机处理Step6: 服务器处理反向传输总结题记:本文主要是摘自CCNA指南中讲的,再加上自己的理解,详细阐述一次完整的数据传输过程。之前在考CCIE的时候也看过,后来有些忘记,特总结记录。重要:封装报文是从上层...

2019-05-11 22:50:47 30809 17

原创 可伸缩的Web系统架构和分布式系统 (译)

文章目录1 分布式系统设计的原则2 基本的Web系统2.1 例子:图片托管应用程序2.2 服务拆分2.3 Redundancy最近对高可用架构有些兴趣,看了下相关资料,总结下。1 分布式系统设计的原则Avilability。 需要对关键模块做redundancy,快速的恢复对于部分系统,和优雅的降级当问题出现时。Performance。访问Web的速度。Reliability。对数据的...

2019-04-27 21:58:02 1042

原创 高可用架构中 LVS,Keepalived,HAProxy解析以及实战

文章目录LVS1 什么是LVS2 怎么用3 原理3.1 后端调度算法3.2 如何实现题记:在工作中有时会碰到LVS, Keepalived, HAproxy, Nginx。有时候用到了只是会用某项技术,但是并没有把他们融会贯通。此篇博文特意总结下。LVS参考: http://www.zsythink.net/archives/21341 什么是LVSLVS是一种基于TCP/IP的负载均衡...

2019-04-27 12:31:42 3504

原创 高可用架构中 VIP/ Secondary IP(辅助IP)/ alias IP

文章目录概述Secondary ipalias ip容器网络的应用总结概述在之前工作中遇到的HA的case,大部分还是通过在Linux上设置Secondary IP或者alias ip来向外暴露VIP(virtual IP)的方式提供北向的HA功能。这样保证某一个server down掉之后,还可以通过VIP来访问服务。前提条件是要有某种机制可以发现某个server down掉,并在另一台se...

2019-04-22 23:23:00 2118

原创 如何用Kubernetes建立CDN

文章目录用户越多,问题就越多解决方案:内容分发网络(CDN)CDN服务商的问题kubeCDN架构设计解决的问题开发的挑战Terraform 代码重构ExternalDNS的问题kubeCDN的改进不同云服务商的支持多地域的自动伸缩预定义区域列表总结趁着假期,翻译了一篇文章,已经发表在dockerone。kubeCDN:基于Kubernetes的自托管CDN。GitHub: https://g...

2019-04-06 22:40:15 650

原创 查看host/container veth pair 关系

1 问题背景容器中的eth0实际上和外面host上的某个veth是pair关系,然后通过bridge,如docker0 实现在一个host上容器间通信。但是有没有一个办法可以知道host上的vethxxx,到底是和哪个container eth0 是pair关系呢 ?2 实现思路2.1 思路1容器里面,查看 # cat /sys/class/net/eth0/i...

2019-03-16 10:31:56 4384 2

原创 K8S kube-proxy ipvs 原理分析

1 在k8s 设置ipvs模式1.1 Perquisites1.2 修改kube-proxy 启动参数2 ipvs kube-proxy原理分析2.1 集群内部通过cluster ip访问到Pod2.2 集群外部通过node ip 访问到Pod2.3 总结Refer1 在k8s 设置ipvs模式因为iptables的效率比较低,在k8s v1.11中已经release 了ipvs。本文将描述...

2019-02-24 16:47:03 7122

原创 K8S kube-proxy iptables 原理分析

文章目录Precondition什么是 Kube ProxyKube Proxy 原理搭建一个GuestBook 例子分析iptables1. 创建iptables实现外方通过nodePort访问2. 分析k8s的 iptables2.1 集群内部通过cluster ip 访问到Pod2.2 集群外部通过node ip 访问到PodReferPrecondition要理解这篇文章之前,需要先对...

2019-01-29 17:12:02 4217 4

原创 Cassandra 分页 读取数据

文章目录为什么要分页方案选择TokenJPAPagingState参考为什么要分页如果一个查询得到的记录数太大,一次性返回回来,那么效率非常低,并且很有可能造成内存溢出,使得整个应用都奔溃。所以,在数据量比较大的时候,分页还是非常有必要的。方案选择TokenCassandra 提供了Token 函数 来记录上次查询的最后一条数据,但是它需要多个primary key, 不适合我们项目。所...

2018-10-23 18:25:41 3116

原创 Linux alarm signal (SIGALRM) to detach process isAlive

题记最近做项目遇到的问题,程序跑了多个process,每个process都是相互独立的,为了解耦,类似于微服务的架构,我们要求系统可以detach 到 主线程跑飞,死循环等其他bug 问题,最初的设计方案是:每个process 都会给每一个monitor的process 去发送keep alive 消息,由monitor去收集每个module的keep alive消息,然后去判断是否process...

2018-06-09 11:20:49 644

原创 Go 实现 nginx log 读取 分析 写入InfluxDB 并用Grafana 显示

参考:慕课网https://www.imooc.com/learn/982 1. 系统结构用Go实现文件读取,并且将log 分析并写入InfluxDB,最后用通过配置Grafana 显示log file –>log process –> influxdb –> grafana监控需求:某个协议下的某个请求在某个请求方法的QPS和响应时间和流量2. Go 接收Go 并发执行 将复杂的任务拆分,通过

2018-05-01 23:04:17 2631

原创 Kubernetes 内部组件工作原理

翻译自:https://blog.heptio.com/core-kubernetes-jazz-improv-over-orchestration-a7903ea92ca原作者:Joe Beda (Dad of two. CTO of Heptio. Started Google Compute Engine, Kubernetes and Google Container Engine.)  ...

2018-04-22 00:04:01 4284

原创 Java try catch finally 总结

题记:网上看了很多try catch finally 的例子,发现并没有一个总结的非常全的,将各种case都有写的,所以在这里总结下,不正确的还请指教!问题1: finally 语句内一定会执行吗?不一定会执行:如下两种情况finally 语句必须在try语句块执行的情况下才会执行。如果有System.exit()语句,终止了JVM,则不会执行。举例:public int testCas1() {...

2018-04-14 16:15:30 291

原创 iptables 从放弃 到 熟悉

之前碰到 iptables 就感觉像天书一样,其实找到靠谱的资料,然后自己理解,也并不是那么难。靠谱资料强烈推荐–>http://www.zsythink.net/archives/tag/iptables/page/2/ 如果认真读完,可以有个很全面的理解视频:http://www.imooc.com/video/7602

2017-08-30 10:49:41 400

原创 Vmware 网络模式Bridge, NAT, Host-only 以及设置host通过127.0.0.1访问vm web server

记录折腾的一件事,其实是很简单的一个事情,就是因为之前没有搞明白原理才走了很多弯路,最终目的是可以在host上通过127.0.0.1访问VM中的一个Web Server(用MedieaWiki 搭了个人Wiki,方式记录工作和生活中的知识)。技术,就是一点点弄懂,懂了之后就觉得很简单的一件事,所以有时候狂试并不是一个明智的做法,仔细分析下也许就柳暗花明了。Vmware 网络模式看了很多文章介绍Vm

2017-08-27 12:13:15 1771

原创 Elasticsearch, Logstash, Kibana (ELK) 搭建

ELK的搭建有几种方式,概括下: 1. 下载将ELK 组成一起的包 2. 分别安装E,L,K 3. 将ELK装在Docker中。 我还是比较喜欢第三种,就主要介绍第三种。1 increase the limits about max_map_countOn Linux, you can increase the limits by running the following com

2017-07-30 22:14:35 631 1

原创 用kubeadm 搭建 Kubernetes

记录下这几天在折腾的一个事,就是想把Kubernetes 搭建起来,看看它是怎么玩的,搭建过程还是比较辛苦的,因为没有找到特别靠谱的资料,或者版本不兼容。一 搭建的方式Kubernetes 搭建有三种方式,简单评价一下:基于Docker 本地运行Kubernetes 先决条件: http://www.cnblogs.com/zhangeamon/p/5197655.html 参考资料:

2017-04-30 23:14:54 6904 1

原创 CCIE 之路 2016.9.20-2017.2.24

今天终于考完了,最终结果PASS, 晚上没事就总结下。主要分为三部分吧,首先是为什么要考CCIE, 然后说下如何备战CCIE, 最后是战报分享和考试技巧。这也是做每一个事情或者学习每一种技术的,经常问自己的问题,why , what, how. 当然这里没有WHAT了. What is CCIE, I believe you know.1 WHY至于为什么要考CCIE,其实说来很简单。2015年7月

2017-02-25 00:22:03 2372

原创 打造漂亮实用的Interllij Java Style

题记:本篇博客描述如何在第一次打开IDEA时,如何配置漂亮的界面。拥有一个漂亮的界面,coding 才爽import google java code styleidea支持自定义的code style,并且google code style也提供了正对idea的xml配置,直接导入就可以在idea中使用google提倡的code style了。从github上clone google code

2017-01-04 23:26:05 8767

原创 Opendaylight 中 关于工厂设计模式的应用

好久没有写博客了,最近工作上倒不是不忙,但是在准备考CCIE,所有休息时间都基本上交给了CCIE, 不过也确实学到了不少东西。另外,工作之后看的ODL的code比较多,感觉ODL中用的Java设计模式中,比较多的是单例和工厂模式,比较有用的还属于工厂模式,更能体现面向对象编程。当然其他的还不懂,如果以后看到再进行补充。什么是工厂模式在网上工厂模式的解释有很多,http://zz563143188.

2016-12-24 17:36:15 332

Tableau入门-示例-超市分析

Tableau入门-示例-超市分析

2022-12-01

Tableau入门-示例-超市 excel 表格 中文版

Tableau入门,示例 超市 excel 表格 中文版

2022-11-30

AngularJs Tooltips

本篇文章实现功能可以随意实现tooltip,把tooltips封装成angularjs中的指令,方便使用,参照https://github.com/shu-frank-csdn/angular-tooltips

2015-12-06

angularjs ng-table demos

angularjs的各种demo,http://blog.csdn.net/u011563903/article/details/48377299有详细解释

2015-09-11

mongodb使用-增删改查、colleciton关联、_id作为主键实现update

这篇主要是讲下mongodb数据库的操作。web前端通过ajax把数据按照yang的格式传给servlet,然后servlet再给相应的url传输,就是对应的yang文件的某个rpc,rpc收到后进行解析。

2015-07-24

datatable的例子使用--增加删除修改查询

datatable的一个简单实用,可以参照http://blog.csdn.net/u011563903 一篇博客的介绍

2015-07-16

jquery实现json数据填充到table表格中并且实现remove add 数据

本代码实现的是通过数据库部分读到的json数据,填充到table表格中,并且也可以实现table表格中用户自行进行增删等操作,主要是jquery、js

2015-07-08

android下用java调用c/c++实现jni

上篇文章中已经介绍了,关于NDK开发环境的搭建,这里不做赘述。这篇文章主要是通过一个例子来说明如何通过eclispe自动生成.h头文件,适合初学者,详见http://write.blog.csdn.net/postedit/42144847

2014-12-26

海思MPP移植到eclipse下实现在eclipse下用海思交叉编译器实现编译工程

相关描述请看:http://blog.csdn.net/u011563903/article/details/41632571 详细的分析

2014-12-01

android service 通过broadcast通知activity

android 后台启动service监听某个函数的状态是否发生改变,如果改变则 通过broadcast通知Myreceiver,启动另一个activity

2014-08-29

android获取网络图片、html代码

android获取网络图片、html代码,并且下载到本地,通过ImageVIew或者textview显示出来

2014-08-29

Jpushclient 源码

实现在客户端接收JPush推送消息,收到消息后,在activity中显示出来。

2014-08-29

基于LPC1768的远程数据采集

本程序,是以LPC1768为控制核心,外围有ds18b20,dht11,mq-2来分别采集温度、湿度、烟雾浓度,可是实现在一个局域网内进行查看的功能。

2014-02-25

LPC1768 DS18B20通过串口显示温度

这个是通过串口来显示当前温度,用Keil4开发。

2013-11-27

npp.6.4.1.Installer

这个在学习编程语言的前期应该非常有用,不先用编程工具或者叫开发环境而是直接用这个

2013-07-31

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除