05 2022 档案
摘要:1 脚本启动方式创建/data目录,关闭防火墙,selinux;上传etcd软件包etcd-v3.2.12-linux-amd64.tar.gz解压软件包# tar xf etcd-v3.2.12-linux-amd64.tar.gz -C /data/# mv /data/etcd-v3.
阅读全文
摘要:Pod是kubernetes中你可以创建和部署的最小也是最简的单位。Pod代表着集群中运行的进程。 Pod中封装着应用的容器(有的情况下是好几个容器),存储、独立的网络IP,管理容器如何运行的策略选项。Pod代表着部署的一个单位:kuber
阅读全文
摘要:kubeadm是Kubernetes项目自带的及集群构建工具,负责执行构建一个最小化的可用集群以及将其启动等的必要基本步骤,kubeadm是Kubernetes集群全生命周期的管理工具,可用于实现集群的部署、升级、降级及拆除。kubeadm部署Ku
阅读全文
摘要:k8s使用ceph存储 ceph提供底层存储功能,cephfs方式支持k8s的pv的3种访问模式ReadWriteOnce,ReadOnlyMany ,ReadWriteMany ,RBD支持ReadWriteOnce,ReadOnlyMany两种模式 动态供给主要是能够自动帮你创
阅读全文
摘要:1、Excel Excel表格相信咱班上90%的同学都会用,而且有70%是日常都需要用到的 主要功能: 1)数据管理:如排序、筛选、分类汇总、数据验证以及条件格式功能操作2)各种报表制作:通过各种功能实现表格完全个性化,快速出表3)数据可视化:直观高大上的数据展示4)数据分析:利用表格功能分析环比、
阅读全文
摘要:订单系统的作用是:管理订单类型、订单状态,收集关于商品、优惠、用户、收货信息、支付信息等一系列的订单实时数据,进行库存更新、订单下发等一系列动作。订单系统业务的基本模型涉及用户、商品(库存)、订单、付款,订单基本流程是下订单——>减库存,这两步必须同时完成,不能下了订单不减库存(超卖),或者减了库存
阅读全文
摘要:1、ThinkGem / JeeSite(开发人员/项目名称) JeeSite是您快速完成项目的最佳基础平台解决方案,JeeSite是您想学习Java平台的最佳学习案例,JeeSite还是接私活的最佳助手。 JeeSite是在Spring Framework基础上搭建的一个Java基础开发平台,以S
阅读全文
摘要:springboot注解大全 SpringBoot注解就是给代码打上标签的能力。通过引入注解,我们可以简单快速赋予代码生命力,大大提高代码可读性和扩展性。注解本身不具有任何能力,只是一个标签,但是我们可以定义各种标签然后实现各种标签处理器来对类、方法、属性甚至参数等进行功能扩展、功能开启、属性定义、
阅读全文
摘要:本文以一个简单的电商订单系统为例,源代码请访问: git clone https://github.com/e-commerce-sample/order-backendgit checkout a443dace 所使用的技术栈主要包括:Spring Boot、Gradle、MySQL、Junit
阅读全文
摘要:一、人脸注册 step1:人像采集。在注册页面上用html中video组件和js调用笔记本摄像头,并抓取人像图片。没有摄像头的笔记本、台式机的童鞋告辞吧,走好不送。。。 step2:人像上传至项目文件夹。将在页面采集到的人像数据转换成bash64字符传输到web后台,在后台将bash64转换成图片上
阅读全文
摘要:https://blog.csdn.net/bochuangli/article/details/123029392 https://blog.csdn.net/bochuangli/article/details/123014331 文章目录1 概述1.1分库分表是什么1.2 分库分表的方式1.2
阅读全文
摘要:一、Sharding-JDBC 简介 最早是当当网内部使用的一款分库分表框架,到2017年的时候才开始对外开源,这几年在大量社区贡献者的不断迭代下,功能也逐渐完善,现已更名为 ShardingSphere,2020年416正式成为 Apache 软件基会的顶级项。 随着版本的不断更迭 的核心功能也变
阅读全文
摘要:一、什么是数据的优化 数据库的优化是一个综合型的技术,并不是通过某一种方式让数据库效率提高很多, 而使通过多方便的提高,从而使数据提高很多 主要包括 1. 表的设计合理化 2. SQL语句的优化 3. 给表要添加合适的索引 普通索引、主键所以,唯一索引 unique、全文索引 4. 分表技术(水平分
阅读全文
摘要:普通hash Hash函数:一般翻译做散列、杂凑,或音译为哈希,是把任意长度的输入(又叫做预映射pre-image)通过散列算法变换成固定长度的输出,该输出就是散列值。碰撞(冲突):如果两个关键字通过hash函数得到的值是一样的,就是碰撞或冲突。Hash表(散列表):根据散列函数和冲突处理将一组关键
阅读全文
摘要:1.首先了解几个概念 1)、TGC:Ticket-granting cookie,存放用户身份认证凭证的cookie,在浏览器和CAS Server间通讯时使用。2)、TGT:ticket granting ticket,TGT对象的ID就是TGC的值,在服务器端,通过TGC查询TGT。TGT封装了
阅读全文
摘要:一、生活中的数据 搜索引擎是对数据的检索,所以我们先从生活中的数据说起。我们生活中的数据总体分为两种: 结构化数据 非结构化数据 结构化数据: 也称作行数据,是由二维表结构来逻辑表达和实现的数据,严格地遵循数据格式与长度规范,主要通过关系型数据库进行存储和管理。指具有固定格式或有限长度的数据,如数据
阅读全文
摘要:数据驱动迁移反模式(Data-Driven Migration) 如上图所示,此种反模式的问题在于微服务的粒度没有最终确定之前就做了数据迁移,如此当不断的调整服务粒度时,那么数据库就免不了频繁迁移,带来极大的成本。更好的方式如下图所示: 即先分离功能,数据库先保持之前的单体,等到服务粒度最终确定之后
阅读全文
摘要:2. 背景知识 QPS:Queries per second 每秒的请求数目 PPS:Packets per second 每秒数据包数目 摇红包:客户端发出一个摇红包的请求,如果系统有红包就会返回,用户获得红包 发红包:产生一个红包里面含有一定金额,红包指定数个用户,每个用户会收到红包信息,用户可
阅读全文
摘要:1. Client发出请求 1.1 HTTP 1.1 可以保持长连接,但是每个不同的请求之间,client要向server发一个请求头 请求无法并行执行的,在一个连接里面 假设如果不合并的话需要建立N个连接,那么合并就可以省去(N-1)*RTT的时间,RTT指网络延迟(在传输介质中传输所用的时间,即
阅读全文
摘要:四次大的架构变化,每代架构都用一句话来总结: 第一代架构特点:业务比较集中、功能满足投资理财需求、快速上线第二代架构特点;分布式系统改造,平台化初具规模,各项垂直业务系统搭建上线、产品端极大丰富用户投资、大数据平台研究并使用第三代架构特点;SOA治理,使用zookeeper作为注册中心,dubbo做
阅读全文
摘要:1.1、适用场景: 本篇文章,适用于单个/多个大型项目、拥有超过10个以上的前端开发的场景。 前端项目的规模不同,成本收益比也会有所差别。 通常来说,人员越多、项目复杂度越高,那么收益/成本的比值越大。 对于人数较少、项目简单的开发团队,可能有部分措施不适用,因此应该根据具体情况来选用。 1.2、核
阅读全文
摘要:过滤器的使用 首先需要实现 Filter接口然后重写它的三个方法 init 方法:在容器中创建当前过滤器的时候自动调用 destory 方法:在容器中销毁当前过滤器的时候自动调用 doFilter 方法:过滤的具体操作 我们先引入 Maven 依赖,其中 lombok 是用来避免每个文件创建 Log
阅读全文
摘要:单点登录的实现原理 单点登录在现在的系统架构中广泛存在,他将多个子系统的认证体系打通,实现了一个入口多处使用,而在架构单点登录时,也会遇到一些小问题,在不同的应用环境中可以采用不同的单点登录实现方案来满足需求。 我将以我所遇到的应用环境以及在其中所经历的各个阶段与大家分享,若有不足,希望各位不吝赐教
阅读全文
摘要:分库分表 理论 当一张表的数据达到几千万时,查询一次所花的时间会变长。业界公认MySQL单表容量在 1千万 以下是最佳状态,因为这时它的BTREE索引树高在3~5之间。 数据切分可以分为:垂直切分和水平切分。 一、垂直切分 垂直切分又可以分为: 垂直分库和垂直分表。 1、垂直分库 概念 就是根据业务
阅读全文
摘要:mysql有多种日志,常见的有: 错误日志(ErrorLog)更新日志(UpdateLog)二进制日志(Binlog)查询日志(QueryLog)慢查询日志(SlowQueryLog)Binlog可以说是MySQL最重要的日志了,它记录了所有的DDL和DML(除了数据查询语句)语句,以事件形式记录,
阅读全文
摘要:https://www.nowcoder.com/interview/ai/index 1-TCP协议的流量控制和拥塞控制 TCP的流量控制是基于窗口机制实现的: 在建立连接时, 发送方和接收方都会建立一个缓存区,在两端进行通信时,数据包头部会有一个窗口字段,标识了接收端剩余的缓存空间。发送方根据窗
阅读全文
摘要:https://worktile.com/ 本篇文章将主要为大家介绍10款甘特图软件:1、PingCode;2、Worktile;3、Microsoft Project;4、Asana;5、Jira;6、Excel;7、MindMaster;8、瀚文软件;9、VARCHART XGantt;10、d
阅读全文
摘要:一、微服务架构图: 二、技术介绍:(技术选型随着代码的编写会完成) 关于技术选型,我盗了一张我老大的微服务技术栈的图,如下:原文:http://www.jianshu.com/p/2da6becfb019 我将会用到上图中的如下技术 服务注册和服务发现:consul 服务健康检查:consul 配置
阅读全文
摘要:1.1 lambda表达式 一、处理匿名内部类 1、Runnable接口 1 new Thread(new Runnable() { 2 public void run() { 3 System.out.println("hello world!!!"); 4 } 5 }).start(); 6 7
阅读全文
摘要:第一章 JVM内存结构 1、为什么要了解JVM内存管理机制 JVM自动的管理内存的分配与回收,这会在不知不觉中浪费很多内存,导致JVM花费很多时间去进行垃圾回收(GC) 内存泄露,导致JVM内存最终不够用 2、JVM内存结构 根据上图,JVM内存结构包括: 方法区 - Java虚拟机规范 <jdk8
阅读全文
摘要:领域驱动(DDD,Domain Driven Design)为软件设计提供了一套完整的理论指导和落地实践,通过战略设计和战术设计,将技术实现与业务逻辑分离,来应对复杂的软件系统。本系列文章准备以实战的角度来介绍 DDD,首先编写领域驱动的代码模型,然后再基于代码模型,引入 DDD 的各项概念,先介绍
阅读全文
摘要:1、Java代码执行流程 第一步:*.java-->*.class(编译期) 第二步:从*.class文件将其中的内容加载到内存(类加载)(运行期) 第三步:执行代码(运行期) 说明: 整个白框部分表示JVM管理的内存 包含栈帧的地方称作JVM方法栈,一个栈帧就是一个方法 在Hotspot JVM中
阅读全文
摘要:一、dubbo架构设计 1、十层架构第一层:service层,接口层,给服务提供者和消费者来实现的。第二层:config层,配置层,主要是对dubbo进行各种配置的。第三层:proxy层,服务代理层,透明生成客户端的stub和服务单的skeleton。第四层:registry层,服务注册层,负责服务
阅读全文
摘要:一、基本概念 接口(Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合。接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。 如果一个类只由抽象方法和全局常量组成,那么这种情况下不会将其定义为一个抽象类。只会定义为一个接口,所以接口严格的来
阅读全文
摘要:13.1、DH 非对称算法的基石 仅能用于密钥分配,不能用于加解密数据,一般加密数据用AES 密钥长度:512~1024中的64的整数倍 双方各有自己的密钥对 13.2、RSA 最经典的非对称加密算法 也可认为是使用最多的非对称加密算法 能用于密钥分配,也能用于加解密数据(“私钥加密,公钥解密”和“
阅读全文
摘要:10.1、DES 已破解,不再安全,基本没有企业在用了 是对称加密算法的基石,具有学习价值 密钥长度56(JDK)、56/64(BC) 10.2、DESede(三重DES) 早于AES出现来替代DES 计算密钥时间太长、加密效率不高,所以也基本上不用 密钥长度112/168(JDK)、128/192
阅读全文
摘要:6.1、MD5 推荐使用CC(即Commons Codec)实现 虽然已被破解,但是仍旧广泛用于注册登录模块与验证下载的文件的完整性 可以自己写一个注册登录模块;自己下载一个MD5加密的文件,然后通过之前编写的工具类(或者使用CC的方法)进行验证(具体的例子在《Java加密与解密艺术(第二版)中有》
阅读全文
摘要:2.1、算法基本规则: 加密的算法公开 加密的密钥不公开 Base64算法公开、密钥也公开的特性不符合基本算法规则,所以很容易被破解,所以一般不用于企业级的加密操作。 2.2、应用场景 简单加密(加密要求不高的情况下,即一眼看不穿的那种情况下使用) 加密(改造字符映射表,即私藏秘钥) 电子邮件传输(
阅读全文
摘要:HashMap源码解析 5.1、对于HashMap需要掌握以下几点 Map的创建:HashMap() 往Map中添加键值对:即put(Object key, Object value)方法 获取Map中的单个对象:即get(Object key)方法 删除Map中的对象:即remove(Object
阅读全文
摘要:一、对于ArrayList需要掌握的七点内容 ArrayList的创建:即构造器 往ArrayList中添加对象:即add(E)方法 获取ArrayList中的单个对象:即get(int index)方法 删除ArrayList中的对象:即remove(E)方法 遍历ArrayList中的对象:即i
阅读全文
摘要:1、常见的两种缓存 本地缓存:不需要序列化,速度快,缓存的数量与大小受限于本机内存 分布式缓存:需要序列化,速度相较于本地缓存较慢,但是理论上缓存的数量与大小无限(因为缓存机器可以不断扩展) 2、本地缓存 Google guava cache:当下最好用的本地缓存 Ehcache:spring默认集
阅读全文
摘要:13.1 dubbo服务降级源码解析 从 9.1 客户端发起请求源码 的客户端请求总体流程图中,截取部分如下: //代理发出请求 proxy0.sayHello(String paramString) -->InvokerInvocationHandler.invoke(Object proxy,
阅读全文
摘要:第十章 dubbo线程模型 一 netty的线程模型 在netty中存在两种线程:boss线程和worker线程。 1 boss线程 作用: accept客户端的连接; 将接收到的连接注册到一个worker线程上 个数: 通常情况下,服务端每绑定一个端口,开启一个boss线程 2 worker线程
阅读全文
摘要:9.1 客户端发起请求源码 来看一下客户端请求代码: 1 DemoService demoService = (DemoService) context.getBean("demoService"); // 获取远程服务代理 2 String hello = demoService.sayHello
阅读全文
摘要:7.6 服务远程暴露 - 注册服务到zookeeper 为了安全:服务启动的ip全部使用10.10.10.10 远程服务的暴露总体步骤: 将ref封装为invoker 将invoker转换为exporter 启动netty 注册服务到zookeeper 订阅 返回新的exporter实例 在7.4
阅读全文
摘要:6.1 如何在spring中自定义xml标签 dubbo自定义了很多xml标签,例如<dubbo:application>,那么这些自定义标签是怎么与spring结合起来的呢?我们先看一个简单的例子。 一 编写模型类 1 package com.hulk.testdubbo.model; 2 3 p
阅读全文
摘要:重要的网址: dubbo的github:https://github.com/alibaba/dubbo dubbo官网:http://dubbo.io/ dubbo使用者手册:https://dubbo.gitbooks.io/dubbo-user-book/ dubbo管理者手册:https:/
阅读全文
摘要:Consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置。 Consul是分布式的、高可用的、可横向扩展的。它具备以下特性 : 服务发现:consul通过DNS或者HTTP接口使服务注册和服务发现变的很容易,一些外部服务,例如saas提供的也可以一样注册。健康检查:健康
阅读全文
摘要:1、Executors与ThreadPoolExecutor ThreadPoolExecutor 可以灵活的自定义的创建线程池,可定制性很高 想创建好一个合适的线程池比较难 使用稍微麻烦一些 实际中很少使用 Executors 可以创建4种线程池,这四种线程池基本上已经包含了所有需求,将来根据业务
阅读全文
摘要:ThreadPoolExecutor使用 + 工作机理 + 生命周期 1、最基础的线程池ThreadPoolExecutor 使用方式: 1 /** 2 * ThreadPoolExecutor测试类 3 * 注意: 4 * 1、ThreadPoolExecutor是一个线程池 5 * 2、多个任务
阅读全文
摘要:1、原子类 可以实现一些原子操作 基于CAS 下面就以AtomicInteger为例。 2、AtomicInteger 在没有AtomicInteger之前,对于一个Integer的线程安全操作,是需要使用同步锁来实现的,当然现在也可以通过ReentrantLock来实现,但是最好最方便的实现方式是
阅读全文
摘要:最常用的方式: int a = 12; //注意:通常情况下,这个会设置成一个类变量,比如说Segement中的段锁与copyOnWriteArrayList中的全局锁 final ReentrantLock lock = new ReentrantLock(); lock.lock();//获取锁
阅读全文
摘要:1、对于CopyOnWriteArraySet需要掌握以下几点 创建:CopyOnWriteArraySet() 添加元素:即add(E)方法 删除对象:即remove(E)方法 遍历所有对象:即iterator(),在实际中更常用的是增强型的for循环去做遍历 注: CopyOnWriteArra
阅读全文
摘要:1、什么是CopyOnWrite容器 CopyOnWrite容器即写时复制的容器。通俗的理解是当我们往一个容器添加元素的时候,不直接往当前容器添加,而是先将当前容器进行Copy,复制出一个新的容器,然后新的容器里添加元素,添加完元素之后,再将原容器的引用指向新的容器。这样做的好处是我们可以对Copy
阅读全文
摘要:1、对于ConcurrentHashMap需要掌握以下几点 Map的创建:ConcurrentHashMap() 往Map中添加键值对:即put(Object key, Object value)方法 获取Map中的单个对象:即get(Object key)方法 删除Map中的对象:即remove(
阅读全文
摘要:一、java集合框架概述 java集合可分为Collection和Map两种体系,其中: 1、Collection接口:单列数据,定义了存取一组对象的方法的集合; List:元素有序、可重复的集合 Set:元素无序,不可重复的集合 2、Map接口:双列数据,保存具有映射关系“key-value对”的
阅读全文
摘要:个人总结 一、拆分原则 单一职责 服务粒度适中 考虑团队结构 以业务模型切入 演进式拆分 避免环形依赖和双向依赖 1 人员的角度 维护一个代名工程Denali的百万级代码怪兽(虽然物理部署是分离的),从发布到上线,从人员的角度,百号人同时在一个工程上开发,一旦线上出问题,所有代码都需要回滚,从人员的
阅读全文
摘要:分布式存储机制-槽 【1】Redis Cluster 在设计中没有使用一致性哈希(Consistency Hashing),而是使用数据分片(Sharding)引入哈希槽【2】Redis Cluster 把所有的节点映射到 [0-16383] slot 槽上,cluster 负责维护 node<->
阅读全文
摘要:◆ 两阶段提交/XA XA是由X/Open组织提出的分布式事务的规范,XA规范主要定义了(全局)事务管理器(TM)和(局部)资源管理器(RM)之间的接口。本地的数据库如mysql在XA中扮演的是RM角色 XA一共分为两阶段: 第一阶段(prepare):即所有的参与者RM准备执行事务并锁住需要的资源
阅读全文
摘要:前言 数据库事务(简称:事务,Transaction)是指数据库执行过程中的一个逻辑单位,由一个有限的数据库操作序列构成。 事务拥有以下四个特性,习惯上被称为 ACID 特性: 原子性(Atomicity):事务作为一个整体被执行,包含在其中的对数据库的操作要么全部被执行,要么都不执行。 一致性(C
阅读全文
摘要:一、mysql架构 mysql是一个单进程多线程架构的数据库。 二、存储引擎 InnoDB: 支持事务 行锁 读操作无锁 4种隔离级别,默认为repeatable 自适应hash索引 每张表的存储都是按主键的顺序记性存放 支持全文索引(InnoDB1.2.x - mysql5.6) 支持MVCC(多
阅读全文
摘要:1.SpringCloud与Dubbo的区别两者都是现在主流的微服务框架,但却存在不少差异: 初始定位不同:SpringCloud定位为微服务架构下的一站式解决方案;Dubbo 是 SOA 时代的产物,它的关注点主要在于服务的调用和治理生态环境不同:SpringCloud依托于Spring平台,具备
阅读全文
摘要:https://www.runoob.com/typescript/ts-tutorial.html TypeScript 是 JavaScript 的一个超集,支持 ECMAScript 6 标准(ES6 教程)。 TypeScript 由微软开发的自由和开源的编程语言。 TypeScript 设
阅读全文
摘要:https://www.w3cschool.cn/escript6/
阅读全文
摘要:https://help.aliyun.com/product/144466.html 云数据库ClickHouse是开源列式数据库管理系统ClickHouse在阿里云上的托管服务,用户可以在阿里云上便捷地购买云资源,搭建自己的ClickHouse集群。 产品架构 云数据库ClickHouse分为社
阅读全文
摘要:前言 IM全称是『Instant Messaging』,中文名是即时通讯。在这个高度信息化的移动互联网时代,生活中IM类产品已经成为必备品,比较有名的如钉钉、微信、QQ等以IM为核心功能的产品。当然目前微信已经成长为一个生态型产品,但其核心功能还是IM。还有一些非以IM系统为核心的应用,最典型的如一
阅读全文
摘要:简介 差不多十年前,随着功能机的淘汰和智能机的普及,互联网开始进入移动互联网时代,最具代表性的产品就是微博、微信,以及后来的今日头条、快手等。这些移动化联网时代的新产品在过去几年间借着智能手机的风高速成长。 这些产品都是Feed流类型产品,由于Feed流一般是按照时间“从上往下流动”,非常适合在移动
阅读全文
摘要:入门篇一 初步调研了解 Step.1 场景锲合度判断选择使用表格存储前关键需要明确你的场景是否适合。表格存储是阿里云自2010起自研使用的一个多模型NoSQL数据库,面向海量大数据存储,身经百战。非常适合存储如下结构化/半结构化数据: 这些场景特点是:1. 数据规模大,常见的关系型数据库难以存储。2
阅读全文
摘要:一、方案背景 订单系统存在于各行各业,如电商订单、银行流水、运营商话费账单等,是一个非常广泛、通用的系统。对于这类系统,在过去十几年发展中已经形成了经典的做法。但是随着互联网的发展,以及各企业对数据的重视,需要存储和持久化的订单量越来越大。数据的重视程度与数据规模的膨胀带来了新的挑战。 需求场景 某
阅读全文
摘要:背景 这两年互联网行业掀着一股新风,总是听着各种高大上的新名词。大数据、人工智能、物联网、机器学习、商业智能、智能预警啊等等。 以前的系统,做数据可视化,信息管理,流程控制。现在业务已经不仅仅满足于这种简单的管理和控制了。数据可视化分析,大数据信息挖掘,统计预测,建模仿真,智能控制成了各种业务的追求
阅读全文
摘要:https://www.runoob.com/jquerymobile/jquerymobile-tutorial.html
阅读全文
摘要:https://www.runoob.com/json/json-tutorial.html
阅读全文
摘要:https://www.runoob.com/react/react-tutorial.html https://www.w3cschool.cn/react/ React 教程 React 是一个用于构建用户界面的 JAVASCRIPT 库。 React 主要用于构建 UI,很多人认为 React
阅读全文
摘要:参考: https://www.runoob.com/vue2/vue-tutorial.html https://www.runoob.com/vue3/vue3-install.html https://www.w3cschool.cn/vuejs2/ https://www.w3cschool
阅读全文
摘要:https://www.runoob.com/angularjs/angularjs-tutorial.html https://www.runoob.com/angularjs2/angularjs2-tutorial.html
阅读全文
摘要:https://www.runoob.com/jquery/jquery-tutorial.html
阅读全文
摘要:https://www.runoob.com/js/js-tutorial.html https://www.w3cschool.cn/javascript/ http://c.biancheng.net/js/
阅读全文
摘要:https://www.runoob.com/bootstrap/bootstrap-tutorial.html https://www.w3cschool.cn/bootstrap/
阅读全文
摘要:https://www.aliyun.com/product/list?spm=5176.14948415.J_3207526240.30.367e7bb3PAa3AG#digitalization
阅读全文
摘要:https://www.aliyun.com/solution/hybridcloud?spm=5176.19720258.J_3207526240.29.43322c4aG3iNYU
阅读全文
摘要:https://iot.aliyun.com/?spm=5176.23056729.J_3207526240.265.3dcc3f06JR1HG2
阅读全文
摘要:https://www.aliyun.com/product/list/alibabacloudnative
阅读全文
摘要:https://www.aliyun.com/product/list/alibabacloudnative
阅读全文
摘要:https://www.aliyun.com/product/network/network?spm=5176.24532587.J_3207526240.73.1ac66489MpvOtf#view=home
阅读全文
摘要:https://www.aliyun.com/product/network/network?spm=5176.24532587.J_3207526240.73.1ac66489MpvOtf
阅读全文
摘要:https://ai.aliyun.com/?spm=5176.14041929.J_3207526240.23.3c596065hAEubo
阅读全文
摘要:https://www.aliyun.com/product/bigdata/apsarabigdata?spm=5176.224200.J_3207526240.22.4640586cdamH1d
阅读全文
摘要:https://www.aliyun.com/product/list?spm=5176.161322.J_3207526240.21.da78592ckV8tkc#security
阅读全文
摘要:https://www.aliyun.com/product/outline/index?spm=5176.161322.J_3207526240.20.58de592cmotafw 什么是PolarDB PolarDB是阿里巴巴自研的新一代云原生关系型数据库,在存储计算分离架构下,利用了软硬件结合
阅读全文
摘要:https://www.aliyun.com/storage/storage?spm=5176.21040285.J_3207526240.19.56316908YSIhtV 什么是云服务器ECS 云服务器ECS(Elastic Compute Service)是阿里云提供的性能卓越、稳定可靠、弹性
阅读全文
摘要:https://www.aliyun.com/product/list/ecs?spm=5176.19720258.J_3207526240.18.13c02c4ailXpLo
阅读全文
摘要:https://www.aliyun.com/product/list?spm=5176.7933691.J_3207526240.16.21674c59qdrsTU
阅读全文
摘要:https://www.jianshu.com/u/b09c3959ab3b ReactNative之项目结构介绍 一、初始化ReactNative工程 自动创建iOS和安卓工程,和对应的JS文件,index.ios.js,index.android.js 并且通过Npm加载package.json
阅读全文
摘要:一、前言 本篇主要讲解GPUImage底层是如何渲染的,GPUImage底层使用的是OPENGL,操控GPU来实现屏幕展示 由于网上OpenGL实战资料特别少,官方文档对一些方法也是解释不清楚,避免广大同学再次爬坑,本篇讲解了不少OpenGL的知识,并且还讲解了花了大量时间解决bug的注意点,曾经因
阅读全文
摘要:直播预览层添加滤镜效果 原理,在显示之前,提前对图片进行滤镜处理,把处理后的图片展示出来就好了. CIFiter(滤镜类):给图片添加特殊效果(模糊,高亮等等). CIFiter滤镜分类(一个滤镜可能属于多个分类) kCICategoryDistortionEffect 扭曲效果,比如bump、旋转
阅读全文
摘要:分析sampleBuffer(帧数据) 通过设置AVCaptureVideoDataOutput的代理,就能获取捕获到一帧一帧数据 [videoOutput setSampleBufferDelegate:self queue:videoQue]; 拿到这一帧一帧数据(sampleBuffer)怎么
阅读全文
摘要:直播(创建房间) 1.进入主播界面,首先创建房间 2.设计房间模型(key,名称),key作为房间的唯一标识,用来找到房间 3.用socket创建房间,导入socket.io框架 4.一般一个客户端一个socket就好了,可以搞个全局的socket 5.客户端代码(需要封装) 1.一个获取全局的so
阅读全文
摘要:客户端代码 点击小红心,发送socket给服务器,并且要传递房间Key给服务器,通知给哪个主播点赞,就能传入到对应的分组socket中 怎么传递房间key,房间Key在主播界面,一般一个客户端,只会产生一个房间,可以记录到socket对象中 业务逻辑:用户点击小红心,小红心就会往上慢慢飘。 实现原理
阅读全文
摘要:搭建礼物列表 使用modal,设置modal样式为custom,就能做到从小往上显示礼物列表,并且能看见前面的直播界面 礼物模型设计 一开始创建3个礼物模型,保存到数组,传入给礼物View展示,本来礼物数据应该从服务器获取,这里没做了。 到时候拿到礼物View就能拿到对应按钮,传给服务器就好了. 礼
阅读全文
摘要:为什么要编码 编码就是压缩图像 手机摄像头采集的都是一帧一帧的图片,只要每秒采集了24帧,看起来就比较流畅,视频就是由一帧一帧的图片构成的,常见图片格式png,jpg,一张图片2M,一秒钟30帧,那么1秒就是60M,这么多保存到本地是没问题,但是进行网络传输,尤其是在外网传输,每一秒传输60M,在中
阅读全文
摘要:在直播中,聊天和发礼物,需要用到及时通讯技术,市面上的App大多数采用的都是第三方SDK,融云,环信等,但是本例子采用websocket搭建及时通讯服务器。 即时通讯 即时通讯(Instant messaging,简称IM)是一个终端服务,允许两人或多人使用网路即时的传递文字讯息、档案、语音与视频交
阅读全文
摘要:开发一款直播app,肯定需要流媒体服务器,本篇主要讲解直播中流媒体服务器搭建,并且讲解了如何利用FFMPEG编码和推流,并且介绍了FFMPEG常见命令。 效果 一、安装Homebrew Homebrew简称brew,是Mac OSX上的软件包管理工具,能在Mac中方便的安装软件或者卸载软件。 1、打
阅读全文
摘要:开发一款直播app,美颜功能是很重要的,如果没有美颜功能,可能分分钟钟掉粉千万,本篇主要讲解直播中美颜功能的实现原理,并且实现美颜功能。 利用GPUImage处理直播过程中美颜的流程 采集视频 => 获取每一帧图片 => 滤镜处理 => GPUImageView展示 美颜基本概念 GPU:(Grap
阅读全文
摘要:作者:袁峥链接:https://www.jianshu.com/p/c71bfda055fa来源:简书著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 开发一款直播app,首先需要采集主播的视频和音频,然后传入流媒体服务器,本篇主要讲解如何采集主播的视频和音频,当前可以切换前置后
阅读全文
摘要:作者:袁峥链接:https://www.jianshu.com/p/7b2f1df74420来源:简书著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 开发一款直播app,集成ijkplayer成功后,就算完成直播功能一半的工程了,只要有拉流url,就能播放直播啦 本篇主要讲解的
阅读全文
摘要:作者:袁峥链接:https://www.jianshu.com/p/bd42bacbe4cc来源:简书著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 一、个人见解(直播难与易) 直播难:个人认为要想把直播从零开始做出来,绝对是牛逼中的牛逼,大牛中的大牛,因为直播中运用到的技术难
阅读全文
摘要:本文包括原理篇/思路篇/实践篇/方案篇/前端篇/总结 直播难:个人认为要想把直播从零开始做出来,绝对是牛逼中的牛逼,大牛中的大牛,因为直播中运用到的技术难点非常之多,视频/音频处理,图形处理,视频/音频压缩,CDN分发,即时通讯等技术,每一个技术都够你学几年的。 直播易:已经有各个领域的大牛,封装好
阅读全文
摘要:Spring 的优良特性 非侵入式:基于Spring开发的应用中的对象可以不依赖于Spring的API 控制反转:IOC——Inversion of Control,指的是将对象的创建权交给 Spring 去创建。使用 Spring 之前,对象的创建都是由我们自己在代码中new创建。而使用 Spri
阅读全文
摘要:1、核心配置文件中配置数据库相关属性 <?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/
阅读全文
摘要:CentOS 下安装 OpenOffice4.0 一、更新服务器 yum源 [root@APP2 /]# yum clean all [root@APP2 /]# yum makecache [root@APP2 /]# yum update 1、首先先下载好需要的rpm包:Apache_OpenO
阅读全文
摘要:1.什么是swaggerSwagger是一个规范和完整的框架,用于生成、描述、调用和可视化RESTful风格的Web服务。简单来说,Swagger是一个功能强大的接口管理工具,并且提供了多种编程语言的前后端分离解决方案。Swagger有大致有3个优点:1.Swagger可以整合到代码中,在开发时通过
阅读全文
摘要:一、采用org.mybatis.spring.mapper.MapperScannerConfigurer 整体结构如下图: 1、配置文件 1>applicationContext01.xml <?xmlversionxmlversion="1.0"encoding="UTF-8"?> <beans
阅读全文
摘要:Hibernate 和 MyBatis 都是目前业界中主流的对象关系映射(ORM)框架,它们的主要区别如下。 1)sql 优化方面 Hibernate 使用 HQL(Hibernate Query Language)语句,独立于数据库。不需要编写大量的 SQL,就可以完全映射,但会多消耗性能,且开发
阅读全文
摘要:一、Spring Boot 具有以下特点: 1. 独立运行的 Spring 项目 Spring Boot 可以以 jar 包的形式独立运行,Spring Boot 项目只需通过命令“ java–jar xx.jar” 即可运行。 2. 内嵌 Servlet 容器 Spring Boot 使用嵌入式的
阅读全文
摘要:Mybatis四种分页方式<br/> 1、数组分页 查询出全部数据,然后再list中截取需要的部分 如下 <br/> 1-1、 mybatis接口 <br/> List<Product> queryProductsByArray(); 1-2、 xml配置文件 <br/> <select id="q
阅读全文
摘要:1为什么需要配置中心 配置实时生效: 传统的静态配置方式要想修改某个配置只能修改之后重新发布应用,要实现动态性,可以选择使用数据库,通过定时轮询访问数据库来感知配置的变化。轮询频率低感知配置变化的延时就长,轮询频率高,感知配置变化的延时就短,但比较损耗性能,需要在实时性和性能之间做折中。配置中心专门
阅读全文
摘要:1.建表,五张表,如下:1.1.用户表CREATE TABLE `t_sys_user` ( `user_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '用户ID', `user_name` varchar(30) NOT NULL COMMENT '
阅读全文
摘要:基本介绍:Ehcache 是一种基于标准的开源缓存,可提高性能,卸载数据库并简化可伸缩性。 它是使用最广泛的基于 Java 的缓存,因为它功能强大,经过验证,功能齐全,并与其他流行的库和框架集成。 Ehcache 可以从进程内缓存扩展到使用 TB 级缓存的混合进程内/进程外部署。 Ehcache 应
阅读全文
摘要:https://help.aliyun.com/product/31815.html 阿里云对象存储OSS(Object Storage Service)是一款海量、安全、低成本、高可靠的云存储服务,可提供99.9999999999%(12个9)的数据持久性,99.995%的数据可用性。多种存储类型
阅读全文
摘要:什么是 HTTP ? 超文本传输协议(HTTP)的设计目的是保证客户端与服务器之间的通信。 HTTP 的工作方式是客户端与服务器之间的请求-应答协议。 web 浏览器可能是客户端,而计算机上的网络应用程序也可能作为服务器端。 举例:客户端(浏览器)向服务器提交 HTTP 请求;服务器向客户端返回响应
阅读全文
摘要:shell定时上传linux日志信息到hdfs 从标题可以分析出来,我们要使用到shell,还要推送日志信息到hdfs上。 定义出上传的路径和临时路径,并配置好上传的log日志信息。这里我使用了上一节配置的nginx的error.log #上传log日志文件的存放路径 /bigdata/logs/u
阅读全文
摘要:HDFS shell API HDFS作为大数据的文件系统,可以放置数据文件,列举几个常用的shell脚本命令,用法和linux中的基本类似,不过这个是hadoop里的一套,所以我们要用hadoop fs开头具体可以使用hadoop fs --help 查看帮助信息 例如:lshadoop fs -
阅读全文
摘要:Hadoop概述信息 hadoop 有三大组成部分,HDFS(分布式文件存储系统)、YARN(资源管理器)、MAPREDUCE(分布式计算框架) ,下边我们来简单介绍一下 HDFS 分布式文件存储系统 HDFS分布式文件系统,是由Google的GFS谷歌文件系统开源出来,其存储模型是有主从结构的,可
阅读全文
摘要:前言 本篇文章是我基于拉勾kafka课程所作的笔记,包括Kafka基本架构、核心概念、生产者解析、消费者解析、存储、事务、一致性保证等等,希望对大家有所帮助。 一、kafka架构 Kafka基础知识 Kafka是最初由Linkedin公司开发,是一个分布式、分区的、多副本的、多生产者、多订阅者,基于
阅读全文
摘要:CentOS7更换yum为阿里源 1 备份本地源mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 2 获取阿里源配置文件CentOS 6wget -O /etc/yum.repos.d/Cent
阅读全文
摘要:1、Maxwell 简介 Maxwell 是一个能实时读取 MySQL 二进制日志文件binlog,并生成 Json格式的消息,作为生产者发送给 Kafka,Kinesis、RabbitMQ、Redis、Google Cloud Pub/Sub、文件或其它平台的应用程序。它的常见应用场景有ETL、维
阅读全文
摘要:1 Kafka简介 Kafka是最初由Linkedin公司开发,它是一个分布式、可分区、多副本,基于zookeeper协调的分布式日志系统;常见可以用于web/nginx日志、访问日志,消息服务等等。Linkedin于2010年贡献给了Apache基金会并成为顶级开源项目。主要应用场景是:日志收集
阅读全文
摘要:1. 概述 Sqoop是apache旗下的一款 ”Hadoop和关系数据库之间传输数据”的工具导入数据:将MySQL,Oracle导入数据到Hadoop的HDFS、HIVE、HBASE等数据存储系统导出数据:从Hadoop的文件系统中导出数据到关系数据库 2. Sqoop的工作机制 将导入和导出的命
阅读全文
摘要:1. 前言 在一个完整的离线大数据处理系统中,除了hdfs+mapreduce+hive组成分析系统的核心之外,还需要数据采集、结果数据导出、任务调度等不可或缺的辅助系统,而这些辅助工具在hadoop生态体系中都有便捷的开源框架,如图所示: 2. Flume基本介绍 1. 概述 Flume是一个分布
阅读全文
摘要:1、DolphinScheduler简介 Apache DolphinScheduler](https://dolphinscheduler.apache.org/)(目前处在孵化阶段)是一个分布式、去中心化、易扩展的可视化DAG工作流任务调度系统,其致力于解决数据处理流程中错综复杂的依赖关系,使调
阅读全文
摘要:1、DataX 基本介绍 DataX 是阿里巴巴集团内被广泛使用的离线数据同步工具,致力于实现包括:关系型数据库(MySQL、Oracle等)、HDFS、Hive、HBase、ODPS、FTP等各种异构数据源之间稳定高效的数据同步功能。 设计理念 为了解决异构数据源同步问题,DataX将复杂的网状的
阅读全文
摘要:1.工作流调度器 1.为什么需要工作流调度系统 一个完整的数据分析系统通常都是由大量任务单元组成: shell脚本程序,java程序,mapreduce程序、hive脚本等 各任务单元之间存在时间先后及前后依赖关系 为了很好地组织起这样的复杂执行计划,需要一个工作流调度系统来调度执行; 例如,我们可
阅读全文
摘要:Hive是基于Hadoop的一个数据仓库工具 可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能。 其本质是将SQL转换为MapReduce的任务进行运算,底层由HDFS来提供数据的存储支持,也可以说hive就是一个MapReduce的客户端 Hive与数据库的区别 Hive的优缺点
阅读全文
摘要:集成分析 HBase表中的数据最终都是存储在HDFS上,HBase天生的支持MR的操作,我们可以通过MR直接处理HBase表中的数据,并且MR可以将处理后的结果直接存储到HBase表中。 参考地址:http://hbase.apache.org/book.html#mapreduce 1 实现方式一
阅读全文
摘要:HBase表热点 1 什么是热点 检索habse的记录首先要通过row key来定位数据行。 当大量的client访问hbase集群的一个或少数几个节点,造成少数region server的读/写请求过多、负载过大,而其他region server负载却很小,就造成了“热点”现象。 2 热点的解决方
阅读全文
摘要:HBase是一个分布式的NoSql数据库,在实际工作当中,我们一般都可以通过JavaAPI来进行各种数据的操作,包括创建表,以及数据的增删改查等等 1 创建maven工程 讲如下内容作为maven工程中pom.xml的repositories的内容 自动导包 <?xml version="1.0"
阅读全文
摘要:1.1 准备安装包 下载安装包并上传到hadoop01服务器 安装包下载地址:https://www.apache.org/dyn/closer.lua/hbase/2.2.6/hbase-2.2.6-bin.tar.gz 将安装包上传到node01服务器/bigdata/softwares路径下,
阅读全文
摘要:HBase和MapReduce 2018-03-30 13:59 更新 HBase和MapReduce Apache MapReduce 是一个用于分析大量数据的软件框架。它由 Apache Hadoop 提供。MapReduce 本身超出了本文档的范围。开始使用 MapReduce 的好地方是 h
阅读全文
摘要:HBase数据模型 2018-03-03 15:20 更新 HBase数据模型 在 HBase 中,数据模型同样是由表组成的,各个表中又包含数据行和列,在这些表中存储了 HBase 数据。在本节中,我们将介绍 HBase 数据模型中的一些术语。 HBase数据模型术语 表(Table) HBase
阅读全文
摘要:https://www.w3cschool.cn/hbase_doc/ HBase 概述 HBase是Apache的Hadoop项目的子项目,是Hadoop Database的简称。 HBase是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建
阅读全文