xDB

2017双11技术揭秘—阿里巴巴数据库技术架构演进

与世无争的帅哥 提交于 2021-02-19 05:01:37
摘要: 每年电商双11大促对阿里技术人都是一次大考,对阿里数据库团队更是如此。经过9年的发展,双11单日交易额从2009年的0.5亿一路攀升到2017年的1682亿,秒级交易创建峰值达到了32.5万笔/秒。支撑这一切业务指标的背后,是底层技术体系的一次次迭代升级。 作者:谌文涛(俞月) 每年电商双11大促对阿里技术人都是一次大考,对阿里数据库团队更是如此。经过9年的发展,双11单日交易额从2009年的0.5亿一路攀升到2017年的1682亿,秒级交易创建峰值达到了32.5万笔/秒。支撑这一切业务指标的背后,是底层技术体系的一次次迭代升级。 阿里巴巴数据库系统经历了10多年的发展,今年正式确定从 第三代大规模分库分表 向 第四代X-DB分布式数据库系统 演进的目标。X-DB分布式数据库的落地已经在2017年双11大促中获得了可行性验证,同时底层开始引入存储计算分离架构。分布式在系统稳定性、容灾能力、容量扩展性、技术体系内聚性上有了质的提升,今年双11开启了阿里数据库技术架构新的篇章。 很多问题其实答案很简单,但是背后的思考和逻辑不简单,要做到知其然还要知其所以然。如果想学习Java工程化、高性能及分布式、深入浅出。微服务、Spring,MyBatis,Netty源码分析的朋友可以加我的Java进阶群:629740746,群里有阿里大牛直播讲解技术

qt5--表格控件QTableWidget

雨燕双飞 提交于 2021-01-03 23:47:51
需要 #include <QTableWidget> #include <QTableWidgetItem> #include " win.h " #include <QDebug> #include <QPushButton> #include <QList> Win::Win(QWidget * parent) : QWidget(parent) { this ->resize( 500 , 400 ); QPushButton * btn= new QPushButton( " 按钮 " , this ); btn ->move( 400 , 350 ); connect(btn, &QPushButton::clicked, this ,& Win::A); tw = new QTableWidget( this ); // 创建空表格控件 // tw=new QTableWidget(4,3,this); // 创建4行3列表格控件 tw->move( 10 , 10 ); tw ->resize( 400 , 300 ); tw ->setRowCount( 15 ); // 设置行数--不包括标题 tw->setColumnCount( 3 ); // 设置列数 tw->setHorizontalHeaderLabels(QStringList()<< " 姓名 "

Proteus8.9 VSM Studio WINAVR编译器仿真ATmega16系列a25_Flash程序空间中数据访问

不问归期 提交于 2020-08-20 08:14:13
*本文及代码参阅彭伟《单片机C语言程序设计实训100例》 一,打开文件(可以随文下载放置在文档中打开)。(如下图1所示) 图1 二,调整原理图大小,适合可视,另存工程文件。(如下图2,3,4所示) 图2 图3 图4 三,点击Source Code标签。(如下图5所示) 图5 四,编辑main.c Proteus8.9 VSM Studio WINAVR编译器仿真ATmega16系列a25_Flash程序空间中数据访问 (如下图6所示) 图6 五,Main.c 代码: //----------------------------------------------------------------- // 名称: Flash程序空间的数据访问 //----------------------------------------------------------------- // 说明: 本例运行时,按下K1将读取并显示存放于Flash程序内存中的 // 320个字节数据及60个字数据. // //----------------------------------------------------------------- #include “myfunc01.h” //-----------------------------------------------------

OEM sql monitor 报错java.sql.SQLException: ORA-31011

时光总嘲笑我的痴心妄想 提交于 2020-08-19 00:59:34
打开OEM -sql 监视页面,出现如下报错: java.sql.SQLException: ORA-31011: XML 语法分析失败 ORA-19202: XML 处理 LPX-00225: 结束元素标记 "sql" 与起始元素标记 "action" 不匹配 Error at line 46376 时出错 ORA-06512: 在 "SYS.DBMS_SQLTUNE", line 15503 ORA-06512: 在 "SYS.DBMS_SQLTUNE", line 15612 ORA-06512: 在 line 1 截图如下: 以前一直不知道为啥,今天终于在MOS上找到答案了 参考文件: OEM SQL Monitoring Page Throws ORA-31061: XDB error: special char to escaped char conversion failed error (Doc ID 1344065.1) 此情况不是一直存在,但每天有重复出现个几次。 原文内容如下,供参考: APPLIES TO: Oracle Database - Enterprise Edition - Version 10.2.0.4 and later Oracle Purchasing - Version 12.2.4 to 12.2.4 [Release 12.2]

无线知识:dBm、dBw、dB、dBi、dBd、asu、接收信号强度(RSSI)、天线增益、灵敏度等无线参数快速了解

我与影子孤独终老i 提交于 2020-08-18 20:44:19
dBm 分贝毫瓦,以1mw为基准的 功率 计量单位,计算公式为: X dBm = 10* lg(P/1mW) 例如以下计算方式: 1mw : 10lg(1/1) = 10* 0 = 0 dBm 10mw : 10lg(10/1) = 10* 1 = 10 dBm 100mw : 10lg(100/1) = 10* 2 = 20 dBm 1000mw : 10lg(1000/1) = 10* 3 = 30 dBm dBw 与dBm一样都是 功率 的计量单位,但dBw是以1W为计量单位,转化关系为: 0 dBw = 10lg1 W = 10lg1000 mw = 30 dBm dB dB表示的是一个 相对值 ,例如比较甲和乙的功率的计算公式: X dB = 10lg(甲功率/乙功率) 接收信号强度(RSSI:Received Signal Strength Indication) 发射功率dBm-路径损失dB=接收信号强度dBm asu google给android手机定义的特有信号单位,是表达信号强度的另一种方式,通过dBm获得,不同制式换算关系不同: LTE: asu=dBm+140 WCDMA和GSM: asu=(dBm+113)/2 天线增益、dBi、dBd 两者都是功率增益的单位,是一个相对值,dBi参考基准是全方向性天线;dBd的参考基准为偶极子,dBi描述dBd时要加上2

一文读懂「分布式架构」

ⅰ亾dé卋堺 提交于 2020-08-16 10:11:08
什么是分布式架构? 分布式架构是分布式计算技术的应用和工具,其中J2EE技术应用较为广泛,它简化和规范多层分布式企业应用系统的开发和部署,它可以给分布式应用软件提供在各种技术间共享资源的平台 分布式架构发展 众所周知,传统架构单一无分层,模块之间耦合性过高导致稳定性和扩展性较差,无法满足互联网高速迭代变化的脚步,技术架构也会发生很大变化。传统架构逐渐分化为分布式架构。提供更稳定、容错、高可用的特质。演变过程如下图所示 阶段1 阶段2 阶段3 阶段4 阶段5 分布式架构设计理念和目标 设计理念: 分布式架构的核心理念按照一定维度(功能、业务、领域)等,对系统进行拆分,通过合理的拆分结构,实现各业务模块解耦,同时通过系统级容错设计,在廉价硬件基础设施上构建起高可用、可扩展的开放技术体系。 目标: 设计目标可以明确方向,通过设计驱动和方向的把控,朝着既定方向前行并最终实现目标。设计目标分为以下方面: • 系统拆分 a.以业务为导向,充分了解系统业务模型,按不同层面的业务模型上可以划分为主模型、次模型。业务模型在一定的比例上能够凸显出系统的业务领域及边界 b.业务依赖范围,由于业务存在重复依赖,从业务边界中按照业务功能去细分 c.把拆分结构图梳理出来,按照系统周边影响从小到大逐渐切换 d.拆分过程中尽量不要引入新的技术或者方案,如需讨论评估后再实施 • 业务模块解耦

RTCP实现代码分析

十年热恋 提交于 2020-08-16 01:26:58
场景 RTP over TCP中 RTCP的实现代码 std::string strName = "fengyuzaitu@51.cto"; int nLength = 2 + 2 + 8 + 20 + 4 + 6 + strName.size(); std::string strRTCPBuffer; //对齐四个字节,并且让最后的字符是0x00,保证wireshark抓包最后显示Type: END (0) int nRet = (strName.length() + 2) % 4; if (0 != nRet) { nLength = nLength + 4 - nRet; } else { nLength = nLength + 4; } strRTCPBuffer.resize(nLength); //$+channel strRTCPBuffer[0] = 0x24; strRTCPBuffer[1] = 0x01; //RTCP报文长度,一段是RTCP统计数据内容,一段是RTCP源描述 *(unsigned short*)&strRTCPBuffer[3] = htons(nLength - 4); //Sender Report strRTCPBuffer[4] = (char)(2 << 6); // V=2, P=RC=0 strRTCPBuffer[5] =

阿里云峰会 | 高并发扛不住、复杂查询慢、数据存不下?

旧街凉风 提交于 2020-08-15 14:11:37
阿里云峰会直播地址 2020年6月9日,“全速重构”2020阿里云·线上峰会即将隆重召开。 在此次峰会上,阿里云数据库重磅发布云原生分布式数据库 PolarDB-X 、云原生数据仓库AnalyticDB、数据库自治服务DAS、云数据库专属集群、图数据库GDB、云数据库Cassandra版、云数据库ClickHouse7款跨时代产品,用技术倾情打造新数字时代的基石! 今天小编为大家倾情呈现PolarDB-X 产品亮点抢先看! 自研云原生分布式数据库PolarDB-X强势来袭! PolarDB-X是由阿里巴巴自主研发的云原生分布式数据库,融合分布式SQL引擎DRDS与分布式自研存储X-DB,基于云原生一体化架构设计,可支撑千万级并发规模及百PB级海量存储。专注解决海量数据存储、超高并发吞吐、大表瓶颈以及复杂计算效率等数据库瓶颈问题,历经各届天猫双11及阿里云各行业客户业务的考验,助力企业加速完成业务数字化转型 。 PolarDB-X客户业务痛点全解析 在线业务超高并发,扛不住! PolarDB-X将业务数据及访问压力分摊至多个计算、存储节点之上,平稳解决在线业务超高并发难题 复杂分析查询,性能慢! 针对在线业务PolarDB-X提供 Parallel Query 以及 MPP 并行加速能力,可大幅提升海量数据下复杂分析查询的执行效率 海量业务数据,存不下! 通过水平拆分PolarDB

electron-vue跨平台桌面应用开发实战教程(十二)——集成加密版的sqlite3:sqlcipher

孤街醉人 提交于 2020-08-12 07:24:04
本文主要讲解集成及使用sqlcipher,一个可以加密的sqlite。sqlcipher官方npm地址: https://www.npmjs.com/package/@journeyapps/sqlcipher 由于和sqlite的功能一样,只是增加了加密的功能,所以具体安装方法请参照: https://my.oschina.net/david1025/blog/3182941 1. 安装sqlcipher依赖 npm install "@journeyapps/sqlcipher" 安装完成之后,需要再运行一下(否则会出现找不到sqlite3.node) npm install 2.使用 var sqlite3 = require('@journeyapps/sqlcipher').verbose(); var db = new sqlite3.Database('test.db'); db.serialize(function() { // Required to open a database created with SQLCipher 3.x db.run("PRAGMA cipher_compatibility = 3"); db.run("PRAGMA key = 'mysecret'"); db.run("CREATE TABLE lorem (info TEXT)

ORACLE--安装与使用

久未见 提交于 2020-08-09 00:04:59
一、什么是ORACLE 二、ORACLE安装与配置 (一)版本和下载 Oracle的版本发展8、9i,10g,11g,12c,18c。 Oracle分免费简化版本(XE)(Oracle Database Express)和完整版本(Oracle Database),都可以自由下载。 完整版本Oracle的官方直接下载的参考网址: https://www.oracle.com/technetwork/database/enterprise-edition/downloads/index-092322.html (二)安装 步骤一:向导 步骤二:许可 步骤三:安装位置 步骤四:设置system账号密码 步骤五:准备安装 步骤六:安装完成 (三)、设置HTTP端口 Oracle的服务端口,默认是1521(类似mysql的3306端口) 提醒:简化版安装完成之后,你的8080端口可能会被占用。你可以将这个服务禁用,也可以将端口改掉。可以参考: 方式1: 以dba身份登录XE,执行下列语句 begin dbms_xdb.sethttpport('7000'); dbms_xdb.setftpport('0'); end; / 方式2: 修改 Database_homepage.url 访问 http://127.0.0.1:7000/apex sys和system是系统的管理员帐号