自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(95)
  • 收藏
  • 关注

原创 【Architecture】3.面向复杂度架构设计

复杂度来源: 高性能, 高扩展, 高可用, 安全,成本。通过分析系统需求找到系统复杂的地方,然后设计方案。分库分表,缓存,集群,分片,微服务。架构设计是为降低软件系统复杂度。

2023-04-02 14:56:03 275

原创 【Architecture】2. 优秀的架构图

Role + Relation (静态架构图)Rule (动态架构图)

2023-04-02 14:31:22 131

原创 【Architecture】1. 什么是架构

Architecture = 结构 + 准则 + 描述。Framework = 组件规范 + 软件产品。MVC是架构,也是框架。

2023-04-02 14:15:26 136

原创 [阿里面试]烂大街的HashMap

A:拿到32位的HashCode,让高16位和低16位进行异或操作。Q:HashMap如何设定初始容量大小?Q: HashMap的函数设计?

2023-01-07 16:56:17 79

原创 [阿里面试]数据库索引

A:WHERE和JOIN中出现的列需要索引。MySQL对=,BETWEEN,IN,部分LIKE会使用索引。A:Hash索引适合等值查询,无法范围查询;不支持联合索引的最左匹配;大量重复键的情况会有hash冲突。A: B树虽然提高磁盘IO性能,但没有解决元素遍历效率低下的问题;B+树可以实现整树遍历,适合基于范围的查询。Q:和Hash索引比起来有什么区别?Q: 什么情况下适合建索引?Q: 为什么索引采用B+树?

2023-01-07 14:32:33 75

原创 [java架构直通][单体]#5_云服务器部署

JDKTomcat1. 前端部署端口:80002.后端部署端口:8088<Server port="8008" shutdown="SHUTDOWN">。 是tomcat 监听的关闭端口。<Connector connectionTimeout="20000" port="8088" protocol="HTTP/1.1" redirectPort="8443" useBodyEncodingForURI="true"/> pro

2022-02-06 19:02:35 306

原创 [java架构直通][单体]#4_个人中心

@ApiModel(value="用户对象", description="从客户端,由用户传入的数据封装在此entity中")public class CenterUserBO { @ApiModelProperty(value="用户名", name="username", example="json", required = false) private String username; @ApiModelProperty(value="密码", name="passwor.

2022-02-05 16:10:12 462

原创 [java架构直通][单体]#3_地址、订单、支付、定时任务

地址@Api(value = "地址相关", tags = {"地址相关的api接口"})@RequestMapping("address")@RestControllerpublic class AddressController { /** * 用户在确认订单页面,可以针对收货地址做如下操作: * 1. 查询用户的所有收货地址列表 * 2. 新增收货地址 * 3. 删除收货地址 * 4. 修改收货地址 * 5. 设置默认地址

2022-01-29 21:05:44 78

原创 [java架构直通][单体]#2_分类、推荐、搜索、评价、购物车

分类<resultMap id="myCategoryVO" type="com.imooc.pojo.vo.CategoryVO"> <id column="id" property="id"/> <result column="name" property="name"/> <result column="type" property="type"/> <result column="fatherId" prop

2022-01-26 19:28:50 354

原创 [java架构直通][单体]#1_项目框架搭建

大型网站九大特点:- 高并发、流量大- 高可用- 大数据- 敏捷开发、迭代快- 用户体系庞大- 可持续升级- 安全防范- 弹性扩展- 吞吐量高、响应速度快大型网站设计宗旨:- 聚合分层- 集群- CDN- 分布式系统- 异步- 业务分离- 数据备份# 聚合工程mvn install 后,项目被真正创建为什么不用数据库外键?- 增删改的性能影响- 热更新- 降低耦合度- 数据库分库分表...

2022-01-24 19:51:26 100

原创 [java架构直通][Netty]#3_Netty打造RPC通信框架

# 客户端连接管理package com.bfxy.rapid.rpc.client;import java.net.SocketAddress;import java.util.Map;import java.util.concurrent.ConcurrentHashMap;import com.bfxy.rapid.rpc.codec.RpcRequest;import com.bfxy.rapid.rpc.codec.RpcResponse;import io.netty.b

2022-01-16 18:00:49 188

原创 [java架构直通][Netty]#2_Netty整合SpringBoot实战

--------------------------------------------------------------------# netty-common首先定义2个注解@Target(ElementType.METHOD)@Retention(RetentionPolicy.RUNTIME)public @interface Cmd { String cmd();}@Target(ElementType.TYPE)@Retention(RetentionPo...

2022-01-15 12:54:10 103

原创 [java架构直通][Netty]#1_Netty入门与提高

Netty已经使用在Hadoop的RPC框架Avro、JMS框架RocketMQ、Dubbo;整个Netty都是异步的,完全基于NIO实现。--------------------------------------------------------------------------------------------Netty极速入门通信步骤(服务端/客户端):- 创建2个NIO线程组(其一用于网络事件处理「与客户端连接」,其二进行网络通信读写)- 创建一个ServerBoo.

2022-01-12 20:43:42 324

原创 [RabbitMQ]3_高级特性

发送端确认机制单条同步确认(推荐)channel.confirmSelect()每发一条消息,调用channel.waitForConfirms()等待确认多条同步确认channel.confirmSelect()发送多条消息,调用channel.waitForConfirms()等待确认异步确认channel.confirmSelect()channel添加监听addConfirmListener消息返回机制消息发送后没有发现目标队列,中间件通知发送方,returnL

2021-01-17 19:19:23 57

原创 [RabbitMQ]rabbitMQ环境搭建

安装rabbotMQbrew install rabbitmqdocker run -it --rm --name rabbitmq -p 5672:5672 -p 15672:15672 rabbitmq:3-management启动前端插件rabbitmq-plugins enable rabbitmq-managementlocalhost:15672 user:guest pass:guest

2021-01-02 21:41:59 75

原创 [RabbitMQ]1_AMQP

Brokerr:接收和分发消息Virtual Host:虚拟Broker,将多个Broker隔离Connection:publisher/consumer和broker间的TCP连接Channel:connection内部建立的逻辑连接,连接每个线程创建单独的channelRouting Key:指示消息的路由转发Exchange:交换机Queue:消息队列Binding:exchange和queue间的虚拟连接,用于message分发依据Exchange共4种类型:Direct..

2021-01-02 20:56:27 89

原创 [hadoop][Azkaban]#2_Two-Server mode

https://azkaban.readthedocs.io/en/latest/getStarted.html#getting-started-with-the-multi-executor-server

2020-01-21 20:18:25 125

原创 [hadoop][Azkaban]#1_azkaban快速入门

Dependency作业# foo.jobtype=commandcommand=echo foo# bar.jobtype=commanddependencies=foocommand=echo bar2个文件打包为ziphdfs作业# hdfs.jobtype=commandcommand=hadoop fs -ls /打包为zipmapreduce作业# ...

2020-01-21 12:44:53 163

原创 [hadoop][Azkaban]#0_azkaban环境搭建

编译安装在github下载源码包./gradlew build installDist为加快编译,将gradle-4.6-all.zip放在/root/Downloads/azkaban-3.81.0/gradle/wrapper中,在gradle-wrapper.properties修改distributionUrl将azkaban-solo-server/build/distribu...

2020-01-21 10:32:24 119

原创 [elastic][ES]#0_ES部署

Running ES in dockerdocker pull docker.elastic.co/elasticsearch/elasticsearch:7.5.1docker run -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:...

2020-01-16 20:02:58 126

原创 [hadoop][hbase]#51_hbase_shell

bin/hbase shellDDL查看版本> version查看状态> status建表> create craete "namespace:表名","family column","family column"看表列表> list看表详细信息> describe 't1'改表> alter 'namespace:表名', '列族', {NAM...

2019-12-30 21:56:36 96

原创 [hadoop][redis]#74_jedis

<!-- https://mvnrepository.com/artifact/redis.clients/jedis --> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> &...

2019-12-29 14:06:11 76

原创 [Spring][SpringFramework]#1_IoC

QuickStartIoC容器实现步骤:在 pom.xml 中添加 Spring 依赖创建配置文件,可以自定义文件名 spring.xml在 spring.xml 中配置 bean 标签,IoC 容器通过加载 bean 标签来创建对象调用 API 获取 IoC 创建的对象无参构造<!-- 配置 student 对象 --><bean id="stu" cl...

2019-12-24 23:26:01 80

原创 [flink]#10_Flink Job @ Standalone、YARN、Mesos、K8S

Standalone./bin/start-cluster.sh# jps65425 Jps 51572 TaskManagerRunner 51142 StandaloneSessionClusterEntrypointStandaloneSessionClusterEntrypoint 代表的是 Job Manager 进程TaskManagerRunner 代表的是 Task...

2019-12-18 19:42:22 170

原创 [Spark][spark_streaming]#5_spark_streaming&spark_sql

import org.apache.spark.SparkConfimport org.apache.spark.rdd.RDDimport org.apache.spark.sql.SparkSessionimport org.apache.spark.streaming.{Seconds, StreamingContext, Time}/** * Spark Streaming整...

2019-12-18 16:31:05 81

原创 [Spark][spark_streaming]#4_Transform

import org.apache.spark.SparkConfimport org.apache.spark.streaming.{Seconds, StreamingContext}/** * 黑名单过滤 */object TransformApp { def main(args: Array[String]): Unit = { val sparkConf...

2019-12-18 16:19:29 62

原创 [Spark][spark_streaming]#3_将结果写入到MySQL

import java.sql.DriverManagerimport org.apache.spark.SparkConfimport org.apache.spark.streaming.{Seconds, StreamingContext}/** * 使用Spark Streaming完成词频统计,并将结果写入到MySQL数据库中 */object ForeachRDDA...

2019-12-18 16:18:14 76

原创 [Spark][spark_streaming]#2_Stateful

import org.apache.spark.SparkConfimport org.apache.spark.streaming.{Seconds, StreamingContext}/** * 使用Spark Streaming完成有状态统计(统计到目前为止出现过的单词计数(保存以前的状态)) */object StatefulWordCount { def main(...

2019-12-18 16:17:05 79

原创 [flink]#10Flink高可用

flink-conf.yaml########基础配置########### jobManager 的IP地址 jobmanager.rpc.address: localhost# JobManager 的端口号 jobmanager.rpc.port: 6123# JobManager JVM heap 内存大小 jobmanager.heap.size: 1024m# TaskM...

2019-12-18 11:33:53 109

原创 [flink]#33_扩展库:Gelly

./bin/flink run examples/gelly/flink-gelly-examples_2.11-1.9.0.jar \ --algorithm GraphMetrics --order directed \ --input RMatGraph --type integer --scale 20 --simplify directed \ --output printGelly ...

2019-12-17 22:36:18 444

原创 [flink]#32_扩展库:Machine Learning

<dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-ml_2.11</artifactId> <version>1.8.0</version></dependency>//带标签的特征向量 val tr...

2019-12-17 21:57:05 164

原创 [flink]#31_扩展库:State Processor API

使用 DataSet 读取作业状态读取现有的 SavepointExecutionEnvironment bEnv = ExecutionEnvironment.getExecutionEnvironment(); ExistingSavepoint savepoint = Savepoint.load(bEnv, "hdfs://path/", new RocksDBStateBackend...

2019-12-17 21:40:29 279

原创 [flink]#23_Flink CEP

<dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-cep_${scala.binary.version}</artifactId> <version>${flink.version}</version> </depend...

2019-12-17 20:28:08 66

原创 [Spark][spark_streaming]#1_QuickStart

spark-submitbin/spark-submit --master local[2] --class org.apache.spark.example.streaming.NetworkWordCount --name NetworkWordCount /root/spark-2.4.3-bin-2.6.0-cdh5.15.1/examples/jars/spark-examples_2...

2019-12-17 18:36:28 78

原创 [flink]#22_Table API & SQL与DataStream,DataSet

将 DataStream 或 DataSet 注册为 TableStreamTableEnvironment tableEnv = ...;DataStream<Tuple2<Long, String>> stream = ...//将 DataStream 注册为 myTable 表 tableEnv.registerDataStream("myTable",...

2019-12-16 21:41:59 135

原创 [flink]Flink State

state 中存储着每条数据消费后数据的消费点 (生产环境需要持久化这些状态),当 Job 因为某种错误或者其他原因导致重启时,就能够从 checkpoint(定时将 state 做一个全局快照,在 Flink 中,为了能够让 Job 在运行的过程中保证容错 性,才会对这些 state 做一个快照,在 4.3 节中会详细讲) 中的 state 数据进行恢复Keyed State 总是和具体的 ...

2019-12-16 20:07:26 117

原创 [flink]如何使用 Side Output 来分流?

使用 Filter 分流DataStreamSource<MetricEvent> data = KafkaConfigUtil.buildSource(env); //从Kafka 获取到所有的数据流SingleOutputStreamOperator<MetricEvent> machineData = data.filter(m -> "machine".e...

2019-12-15 15:16:20 262 1

原创 [flink]#25_Window

Window 就是用来对一个无限的流设置一个有限的集合,在有界的数据集上进行操作的一种 机制。Window可以分为**基于时间(Time-based)的 Window 以及基于数量(Count-based)**的 window。Flink中一共可以使用以下Window:以时间驱动的 Time Window以事件数量驱动的 Count Window以会话间隔驱动的 Session Win...

2019-12-14 19:24:00 81

原创 [flink]#15_Source 和 Sink 简述

Data SourceStreamExecutionEnvironment.addSource(sourceFunction)共有以下几类:基于集合fromCollection(Collection) - 从 Java 的 Java.util.Collection 创建数据流。集合中的所有元素类型 必须相同。fromCollection(Iterator, Class) - 从一个...

2019-12-13 22:16:02 107

原创 [flink]#14_算子Operator

DataStream OperatorMap获取一个元素并生成一个元素//新的一年给每个员工的工资加 5000。SingleOutputStreamOperator<Employee> map = employeeStream.map(new MapFunction<Employee, Employee>() { @Override public Emplo...

2019-12-13 21:57:46 117

空空如也

空空如也

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

TA关注的人

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