- 博客(65)
- 收藏
- 关注
转载 小程序中嵌套的h5页面设置分享转发
场景描述:当在小程序中打开h5页面时,希望小程序的转发出去的标题,图片,跳转link可以通过h5通信实现自定义。实现方式:通过h5给小程序通信,发送标题,图片,跳转link等信息,让小程序设置分享。h5发送给小程序通信代码引用微信js1.3.2以上才支持,<script type="text/javascript" src="//res.wx.qq.com/open/j...
2019-09-12 10:00:00 5909
转载 【Vue.js实战案例】- Vue.js实现九宫格水果机抽奖游戏总结
大家好!先上图看看本次案例的整体效果。完整版实战课程附demo:【Vue.js实战案例】- Vue.js实现九宫格水果机抽奖实现思路:Vue component实现九宫格水果机组件,可以嵌套到任意要使用的页面。css3 transform控制九宫格水果机抽奖过程的动画效果。抽奖组件内使用钩子函数watch监听抽奖结果的返回情况播放九宫格水果机动画并...
2019-08-07 09:12:00 624
转载 【Vue.js实战案例】- Vue.js实现老虎-机抽奖总结
大家好!先上图看看本次案例的整体效果。 实现思路:Vue component实现老虎-机组件,可以嵌套到任意要使用的页面。css3 transform控制老虎-机抽奖过程的动画效果。抽奖组件内使用钩子函数watch监听抽奖结果的返回情况播放老虎-机动画并给用户弹出中奖提示。中奖结果弹窗,为抽奖组件服务。 实现步骤如下:...
2019-06-25 09:46:00 429
转载 Javascript正则RegExp对象replace方法替换url参数值
看别的博客有用eval执行正则表达式的写法,1 //替换指定传入参数的值,paramName为参数,replaceWith为新值2 function replaceParamVal(paramName,replaceWith) {3 var oUrl = this.location.href.toString();4 var re=eval('/('+...
2019-05-17 10:41:00 273
转载 【Vue.js实战案例】- Vue.js递归组件实现组织架构树和选人功能
大家好!先上图看看本次案例的整体效果。完整版实战课程附demo:Vue.js递归组件实现多层级菜单结构树+仿QQ建群选人功能 浪奔,浪流,万里涛涛江水永不休。如果在jq时代来实这个功能简直有些噩梦了,但是自从前端思想发展到现在的以MVVM为主流的大背景下,来实现一个这样繁杂的功能简直不能容易太多。下面就手把手带您一步步拨开这个案例的...
2019-03-01 10:13:00 1047
转载 图学ES6-1.ECMAScript 6简介
转载于:https://www.cnblogs.com/codeon/p/10009391.html
2018-11-23 19:32:00 121
转载 vue报错 ModuleBuildError: Module build failed: Error: `sass-loader` requires `node-sass` >=4. Please i...
解决方法:输入命令:cnpm install node-sass@latest转载于:https://www.cnblogs.com/codeon/p/9933173.html
2018-11-09 09:09:00 3571
转载 js 相对路径转为绝对路径
有时为了唯一标识网址或其它开发需要,我们需要将相对的网址转换为绝对的网址。当然前人实现方式已经不少,但或多或少的存在缺点或兼容问题。下面我将总结已有实现并给出相对完美的实现。常规实现:地址转换因该实现方式千变万化,故略去代码,但在开发时需考虑base 标签的会带来的地址参照问题。优点:无浏览器兼容问题。缺点:代码量大,不简洁,速度慢。借用浏览器:直接使用链接var ...
2018-06-07 16:42:00 530
转载 查询数据库表结构,默认值,是否为空等
SELECT 表名 = case when a.colorder=1 then d.name else '' end, 表说明 = case when a.colorder=1 then isnull(f.value,'') else '' end, 字段序号 = a.colorder, 字段名 ...
2018-05-09 10:34:00 426
转载 NOLOCK、HOLDLOCK、UPDLOCK、TABLOCK、TABLOCKX
NOLOCK(不加锁) 此选项被选中时,SQL Server 在读取或修改数据时不加任何锁。 在这种情况下,用户有可能读取到未完成事务(Uncommited Transaction)或回滚(Roll Back)中的数据, 即所谓的“脏数据”。 HOLDLOCK(保持锁) 此选项被选中时,SQL Server 会将此共享锁保持至整个事务结束,而不会在途中释放。 UPDLO...
2018-03-08 16:10:00 220
转载 【58沈剑架构系列】RPC-client异步收发核心细节?
第一章聊了【“为什么要进行服务化,服务化究竟解决什么问题”】第二章聊了【“微服务的服务粒度选型”】第三章聊了【“为什么说要搞定微服务架构,先搞定RPC框架?”】上一章聊了【“微服务架构之RPC-client序列化细节”】通过上篇文章的介绍,知道了要实施微服务,首先要搞定RPC框架,RPC框架分为客户端部分与服务端部分。RPC-client的部分又分为:(1)...
2018-01-15 15:07:00 126
转载 【58沈剑架构系列】微服务架构之RPC-client序列化细节
第一章聊了【“为什么要进行服务化,服务化究竟解决什么问题”】第二章聊了【“微服务的服务粒度选型”】上一篇聊了【“为什么说要搞定微服务架构,先搞定RPC框架?”】通过上篇文章的介绍,知道了要实施微服务,首先要搞定RPC框架,RPC框架的职责要向【调用方】和【服务提供方】屏蔽各种复杂性:(1)让调用方感觉就像调用本地函数一样(2)让服务提供方感觉就像实现一个本地函数...
2018-01-15 15:01:00 124
转载 【58沈剑架构系列】为什么说要搞定微服务架构,先搞定RPC框架?
第一章聊了【“为什么要进行服务化,服务化究竟解决什么问题”】第二章聊了【“微服务的服务粒度选型”】今天开始聊一些微服务的实践,第一块,RPC框架的原理及实践,为什么说要搞定微服务架构,先搞定RPC框架呢?一、需求缘起服务化的一个好处就是,不限定服务的提供方使用什么技术选型,能够实现大公司跨团队的技术解耦,如下图:服务A是欧洲团队提供服务,欧洲团队的技术背景是Ja...
2018-01-15 14:57:00 126
转载 【58沈剑架构系列】数据库秒级平滑扩容架构方案
一、缘起(1)并发量大,流量大的互联网架构,一般来说,数据库上层都有一个服务层,服务层记录了“业务库名”与“数据库实例”的映射关系,通过数据库连接池向数据库路由sql语句以执行:如上图:服务层配置用户库user对应的数据库实例物理位置为ip(其实是一个内网域名)。(2)随着数据量的增大,数据要进行水平切分,分库后将数据分布到不同的数据库实例(甚至物理机器)上,以达到...
2018-01-15 14:47:00 173
转载 【58沈剑架构系列】一分钟掌握数据库垂直拆分
一、缘起当数据库的数据量非常大时,水平切分和垂直拆分是两种常见的降低数据库大小,提升性能的方法。假设有用户表:user(uid bigint,name varchar(16),pass varchar(16),age int,sex tinyint,flag tinyint,sign varchar(64),intro varchar(256)...
2018-01-15 14:40:00 140
转载 【58沈剑架构系列】即使删了全库,保证半小时恢复
可能每个人都无意删除过根目录,我的case是这样的,执行了一个清理日志的脚本,大致的逻辑是:...cd ${log_path}rm -rf *...看上去没有任何问题,进入到日志目录,然后把日志都删除。但是,当目录不存在时,悲剧就发生了。程序员总是会这么自信,认为自己写的代码是完美的,别人的代码看着就有想改的冲动。有多少次:“只改了一行代码,保...
2018-01-15 14:34:00 119
转载 【58沈剑架构系列】互联网公司为啥不使用mysql分区表?
缘起:有个朋友问我分区表在58的应用,我回答不出来,在我印象中,百度、58都没有听说有分区表相关的应用,业内进行一些技术交流的时候也更多的是自己分库分表,而不是使用分区表。于是去网上查了一下,并询问了58到家的DBA专家,将自己收到的信息沉淀下来,share给大伙。解决什么问题?回答:当mysql单表的数据库过大时,数据库的访问速度会下降,“数据量大”问题的常见解决方案是“...
2018-01-15 14:26:00 153
转载 【58沈剑架构系列】mysql并行复制优化思路
一、缘起mysql主从复制,读写分离是互联网用的非常多的mysql架构,主从复制最令人诟病的地方就是,在数据量较大并发量较大的场景下,主从延时会比较严重。为什么mysql主从延时这么大?回答:从库使用【单线程】重放relaylog。优化思路是什么?回答:使用单线程重放relaylog使得同步时间会比较久,导致主从延时很长,优化思路不难想到,可以【多线程并行...
2018-01-15 14:24:00 67
转载 【58沈剑架构系列】微服务架构多“微”才合适?
前情提要:互联网架构为什么要做服务化?一、互联网架构为什么要进行服务化-总结上一篇和大伙交流了一下,随着数据量、并发量、业务复杂度的增长,互联网架构会出现以下问题:(1)代码到处拷贝(2)底层复杂性扩散(3)基础库(so/jar/dll)耦合(4)SQL质量得不到保障,业务相互影响(5)数据库耦合“服务化”是一个很好的解决上述痛点的方案。不...
2018-01-15 14:20:00 122
转载 【58沈剑架构系列】多库多事务一致性优化方案
一、案例缘起我们经常使用事务来保证数据库层面数据的ACID特性。举个栗子,用户下了一个订单,需要修改余额表,订单表,流水表,于是会有类似的伪代码:start transaction; CURDtable t_account; any Exception rollback; CURDtable t_order; any Ex...
2018-01-15 14:14:00 145
转载 【58沈剑架构系列】互联网架构为什么要做服务化?
近期参加一些业界的技术大会,“微服务架构”的话题非常之火,也在一些场合聊过服务化架构实践,最近几期文章期望用通俗易懂的语言聊聊了个人对服务化以及微服务架构的理解,希望能给大伙一些启示。如果有遗漏,也欢迎大家补充。一、互联网高可用架构,为什么要服务化?【服务化之前高可用架构】在服务化之前,互联网的高可用架构大致是这样一个架构:(1)用户端是浏览器browser,APP...
2018-01-15 14:07:00 106
转载 【58沈剑架构系列】DB主从一致性架构优化4种方法
需求缘起大部分互联网的业务都是“读多写少”的场景,数据库层面,读性能往往成为瓶颈。如下图:业界通常采用“一主多从,读写分离,冗余多个读库”的数据库架构来提升数据库的读性能。这种架构的一个潜在缺点是,业务方有可能读取到并不是最新的旧数据:(1)系统先对DB-master进行了一个写操作,写主库(2)很短的时间内并发进行了一个读操作,读从库,此时主从同步没有完成,故读取到了一...
2018-01-15 13:59:00 97
转载 【58沈剑架构系列】主从DB与cache一致性
本文主要讨论这么几个问题:(1)数据库主从延时为何会导致缓存数据不一致(2)优化思路与方案一、需求缘起上一篇《缓存架构设计细节二三事》中有一个小优化点,在只有主库时,通过“串行化”的思路可以解决缓存与数据库中数据不一致。引发大家热烈讨论的点是“在主从同步,读写分离的数据库架构下,有可能出现脏数据入缓存的情况,此时串行化方案不再适用了”,这就是本文要讨论的主题。...
2018-01-15 12:43:00 111
转载 【58沈剑架构系列】缓存与数据库一致性保证
本文主要讨论这么几个问题:(1)啥时候数据库和缓存中的数据会不一致(2)不一致优化思路(3)如何保证数据库与缓存的一致性一、需求缘起上一篇《缓存架构设计细节二三事》(点击查看)引起了广泛的讨论,其中有一个结论:当数据发生变化时,“先淘汰缓存,再修改数据库”这个点是大家讨论的最多的。上篇文章得出这个结论的依据是,由于操作缓存与操作数据库不是原子的,非常有...
2018-01-15 12:37:00 185
转载 【58沈剑架构系列】细聊冗余表数据一致性
本文主要讨论四个问题:(1)为什么会有冗余表的需求(2)如何实现冗余表(3)正反冗余表谁先执行(4)冗余表如何保证数据的一致性一、需求缘起互联网很多业务场景的数据量很大,此时数据库架构要进行水平切分,水平切分会有一个patition key,通过patition key的查询能够直接定位到库,但是非patition key上的查询可能就需要扫描多个库了。...
2018-01-15 12:28:00 91
转载 【58沈剑架构系列】缓存架构设计细节二三事
本文主要讨论这么几个问题:(1)“缓存与数据库”需求缘起(2)“淘汰缓存”还是“更新缓存”(3)缓存和数据库的操作时序(4)缓存和数据库架构简析一、需求缘起场景介绍缓存是一种提高系统读性能的常见技术,对于读多写少的应用场景,我们经常使用缓存来进行优化。例如对于用户的余额信息表account(uid, money),业务上的需求是:(1)查询用户的...
2018-01-15 12:23:00 173
转载 【58沈剑架构系列】一分钟了解“好”接口的设计与实现
一、好接口的特性易读易用,难于误用功能独立容易扩展二、好接口设计的基本原则只做并做好一件事函数名自解释不恰当的函数名,往往是不恰当设计的征兆如果没做到上一点,就将函数分解只增加,永远不要删除函数与接口(你永远不知道这个接口被谁在...
2018-01-15 11:26:00 78
转载 【58沈剑架构系列】数据库架构设计的一切
缘起:受@萧田国 萧总邀请,上周五晚上在“高效运维1号群”内分享了《58同城数据库软件架构设计与实践》(这个topic今年在数据库大会上分享过),应组织方要求,发出纪要。一、基本概念二、数据库架构设计思路(1)可用性(2)读性能(3)一致性(4)扩展性一、基本概念概念一“单库”概念二“分片”分片解决的是“数据量太大”的问题,...
2018-01-15 11:11:00 176
转载 【58沈剑架构系列】这才是真正的表扩展方案
事情变得有意思了,上一篇花1小时撰写的“一分钟”文章,又引起了广泛的讨论,说明相关的技术大家感兴趣,挺好。第一次一篇技术文章的评论量过100,才知道原来“评论精选”还有100上限,甚为欣慰(虽然是以一种自己不愿看到的方式)。《啥,又要为表增加一列属性?》的方案颇有争议:(1)版本号version +扩展字段ext(2)用增加列的key+value方式扩充属性...
2018-01-15 10:59:00 238
转载 【58沈剑架构系列】啥,又要为表增加一列属性?
需求缘起产品第一版:用户有用户名、密码、昵称等三个属性,对应表设计:user(uid, name, passwd, nick)第二版,产品经理增加了年龄,性别两个属性,表结构可能要变成:user(uid, name, passwd, nick, age, sex)假设数据量和并发量比较大,怎么变?(1)alter table add column?不太可行,...
2018-01-15 10:56:00 91
转载 【58沈剑架构系列】100亿数据1万属性数据架构设计
一分钟系列之《啥,又要为表增加一列属性?》分享了两种数据库属性扩展思路,被喷得厉害。第二天补充了一篇《这才是真正的表扩展方案》,分享了互联网大数据高并发情况下,数据库属性扩容的成熟工具及思路。对于version + ext方案,还是有很多朋友质疑“线上不可能这么用”。本篇将讲述一下58同城最核心的数据“帖子”的架构实现技术细节,说明不仅不是“不可能这么用”,而是大数据,可变属性...
2018-01-15 10:49:00 225
转载 【58沈剑架构系列】究竟啥才是互联网架构“高可用”
一、什么是高可用高可用HA(High Availability)是分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计减少系统不能提供服务的时间。假设系统一直能够提供服务,我们说系统的可用性是100%。如果系统每运行100个时间单位,会有1个时间单位无法提供服务,我们说系统的可用性是99%。很多公司的高可用目标是4个9,也就是99.99%,这就意味着,系统的年停...
2018-01-15 10:39:00 90
转载 【58沈剑架构系列】究竟啥才是互联网架构“高并发”
一、什么是高并发高并发(High Concurrency)是互联网分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计保证系统能够同时并行处理很多请求。高并发相关常用的一些指标有响应时间(Response Time),吞吐量(Throughput),每秒查询率QPS(Query Per Second),并发用户数等。响应时间:系统对请求做出响应的时间。例如...
2018-01-15 10:15:00 83
转载 【58沈剑架构系列】一分钟写好连接池
一、如何通过连接访问下游工程架构中有很多访问下游的需求,下游包括但不限于服务/数据库/缓存,其通讯步骤是为:(1)与下游建立一个连接(2)通过这个连接,收发请求(3)交互结束,关闭连接,释放资源这个连接是什么呢,通过连接怎么调用下游接口?服务/数据库/缓存,官方会提供不同语言的Driver、Document、DemoCode来教使用方建立连接与调用接口,以Mon...
2017-12-13 09:01:00 122
转载 div内部实现图片旋转、放大、缩小、拖拽
药药,切克闹,一人我编码累,累把那bug写成堆。秋高气爽空气干燥你一定dei多喝水,过完了这周我就要回去、趁还有几天、你尽情的来跟我怼~~~新的一年,很久没更博客了,眼看十一要来了,听说过了十一就等过年了,但是感觉刚过完年一样,心里黯然神伤,更博一篇以表对小白驹过隙之神速聊以慰藉下……在开发中这样一个场景,web应用程序某处功能会接收来自各个户上传的图片,后台有个图片查看功能,实...
2017-09-26 14:18:00 1159
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人