10 铁锚

尚未进行身份认证

系统架构师,Java性能调优专家。热爱程序开发和设计; 积极应对各种情境和挑战; 喜欢钻研新技术, 闲暇时喜欢翻译和分析英文文档/技术博客。

等级
TA的排名 431

删除MySQL表的SQL语句-DROP-TABLE-简介

辨析: 在SQL中, DROP 用于删除表结构等信息, 属于数据格式定义 DDL的范畴;而 DELETE 用于删除数据,属于数据内容操作 DML 的范畴。官方给出的 DROP 关键字删除表结构的语法如下:DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ... [RESTRICT | CASCADE]当然...

2019-12-10 21:11:15

解析一个Java对象占用多少内存空间

说明: alignment, 对齐, 比如8字节的数据类型long, 在内存中的起始地址必须是8的整数倍。padding, 补齐; 在对象所占据空间的末尾,如果有空白, 需要使用padding来补齐, 因为下一个对象的起始位置必须是4/8字节(32bit/64bit)的整数倍(这又是一种对齐)。问题描述一个对象具有100个属性, 与100个对象每个具有1个属性, 哪个占用的内存空间更大...

2019-07-13 16:02:15

Java进阶知识 - 多线程与线程间通信

CountdownLatch, CyclicBarrier 分别适合什么场景呢?大部分情况下, 子线程只需要关心自身执行的任务. 但在某些复杂的情况下, 需要使用多个线程来协同完成某个任务, 这就涉及到线程间通信(inter-thread communication)的问题了.主要涉及的内容有:thread.join() 方法object.wait() 方法object.notif...

2019-03-12 19:21:31

Web开发团队常备工具

Web系统的性能问题会影响企业的各项业务。漏洞太多,运营团队就只能疲于奔命。缺少吸引力, 产品团队则会受困于用户留存率。改不完的BUG, 开发团队就没时间进行新功能开发。业务人员的效率跟着提升不上去。技术经理不能清楚证明团队所做的努力是否合理。类似的情形常常出现。有什么方法可以避免这些风险呢? 工欲善其事必先利其器,我们需要引入一些趁手的工具,各个阶段都要具备。规划工具大部分...

2019-03-04 19:34:38

升级https - 解决系统被网络运营商植入广告等问题

情景回顾福建泉州的客户反馈, 说系统使用不正常, 经常提示 “网络错误”, 或者点击某些按钮时会进行页面跳转。让客户试过各种“万能”手段: 比如清缓存, 换浏览器, 换电脑等等,问题依然会复现。通过QQ远程桌面连接客户的电脑, 使用浏览器的Network控制台, 看到监控信息中莫名出现的加载内容, 如下图所示:怀疑是客户所使用的宽带运营商存在网页劫持和篡改行为。让客户换运营商有点不太现...

2019-02-22 17:51:31

CSS高级技巧:自动省略左侧文本

难以置信! 浏览器和CSS规范居然支持自动省略左侧的文本了。 通过 text-overflow: ellipsis, 搭配固定的 width 属性, 以及overflow: hidden 样式, 就可以实现这样的功能; 能用CSS实现,就不需要编写复杂的 JavaScript 代码来计算字符串宽度, 或者进行截断了. CSS的自动省略特性, 对无障碍环境也非常友好。text-overflow: ...

2018-12-21 12:00:41

WebRTC基础实践 - 10. 总结

我们创建了一个视频聊天的APP, 同时支持传输文件以及其他数据!内容回顾在本教程中, 我们学习了以下内容:获取webcam摄像头的视频内容。通过 RTCPeerConnection 传输视频。通过 RTCPeerConnection 传输数据。配置信令服务来交换消息。集成对等连接和信令服务。拍照并用数据通道传递给对方。下一步体验WebRTC官方示例程序AppRTC: ht...

2018-12-16 21:30:59

WebRTC基础实践 - 9. 拍照并传给对方

本节内容在本节课程中, 我们将学习以下内容:拍照并通过canvas元素获取图像数据。给对面发送图片。本节的完整版代码位于 step-06 文件夹中。工作原理前面的小节中, 我们使用 RTCDataChannel 来传递文本消息。本节课程, 将学习如何发送文件: 下面的示例发送的是通过 getUserMedia() 捕获的照片文件, 原理都是一样的。核心内容包括:建立数据通道...

2018-12-16 21:29:12

WebRTC基础实践 - 8. 集成对等通信和信令服务

本节内容在本节课程中, 我们将学习以下内容:在Node.js平台, 通过Socket.IO来启动信令服务。用信令服务交换WebRTC客户端之间的元数据(metadata)。本节的完整版代码位于 step-05 文件夹中。更新HTML和JavaScript代码更新 index.html 文件, 内容如下:<!DOCTYPE html><html>&lt...

2018-12-14 11:01:45

WebRTC基础实践 - 7. 配置信令服务

本节内容在本节课程中, 我们将学习以下内容:通过 npm 安装 package.json 文件中指定的项目依赖运行Node.js服务器, 通过 node-static 提供静态文件服务。用Socket.IO创建消息传递服务创建聊天室以及发送聊天消息。本节的完整版代码位于 step-04 文件夹中。基本概念要创建并保持WebRTC通话, 客户端之间需要互相交换元数据信息, 包括:...

2018-11-28 16:43:55

WebRTC基础实践 - 6. 通过RTCDataChannel传输数据

本节内容WebRTC客户端(peers)之间如何传递数据。本节的完整版代码位于 step-03 文件夹中。修改HTML代码在本示例中, 使用WebRTC的数据通道(data channel), 将一个 textarea 的内容, 传递给同页面中的另一个textarea。这个demo本身没什么实用价值, 主要目的是展示怎样使用WebRTC来传输数据和视频。接着上一节的代码, 将 ind...

2018-11-20 19:16:38

WebRTC基础实践 - 5.通过RTCPeerConnection传输流媒体视频

本节内容在本节课程中,我们将学习以下内容:使用WebRTC兼容库:adapter.js,来抹平各浏览器间的差异。通过RTCPeerConnectionAPI传输流媒体视频。控制media的捕捉和传输。本节的完整版代码位于step-02文件夹中。RTCPeerConnection简介在WebRTC规范中,RTCPeerConnection用于视频流/音频流、...

2018-11-13 19:36:51

WebRTC基础实践 - 4. 获取摄像头的视频流

本节内容在本节课程中, 我们将学习以下知识点:从摄像头(webcam)获取视频流(video stream)控制视频内容的回显通过CSS和SVG处理视频内容。本节的完整版代码位于 step-01 文件夹中。HTML代码在 work 目录下的 index.html 文件中, 增加 video 标签和 script 标签:<!DOCTYPE html><html...

2018-11-12 19:50:09

WebRTC基础实践 - 3. 获取示例代码

下载示例代码如果安装有git工具, 直接用下面的脚本, 从GitHub克隆代码即可:git clone https://github.com/googlecodelabs/webrtc-web.git或者, 点击链接下载 zip 压缩包: https://github.com/googlecodelabs/webrtc-web/archive/master.zip如果下载失败或者本地...

2018-11-09 15:40:36

WebRTC基础实践 - 2. WebRTC课程概述

本课程将逐步开发一个 WebRTC 应用, 通过网络摄像头来拍照、录像、并将这些信息传递给另一方. 在此过程中, 我们将学习如何使用WebRTC的核心API, 还会通过 Node.js 来搭建一个消息服务器。课程内容从摄像头获取视频通过 RTCPeerConnection 传输视频流通过 RTCDataChannel 传输数据流配置信令服务来交换消息集成对等连接与信令服务拍照, 并...

2018-10-15 18:08:57

WebRTC基础实践 - 1. WebRTC简介

WebRTC 是一个开源的实时通信项目, 主要目标是对Web/原生App平台上的语音、视频、以及数据传输等实时通讯提供支持。WebRTC 主要包括以下 JavaScript API(点击链接可查看相关demo)。getUserMedia(): 获取用户设备的音频和视频.MediaRecorder: 录制音频和视频.RTCPeerConnection: 流式传输两个客户端之间的音频与视频....

2018-10-14 11:17:27

OOM终结者参数调优

内存溢出(OutofMemory,OOM),是指计算机的所有可用内存(包括交换空间,swapspace),都被使用满了。这种情况下,默认配置会导致系统报警,并停止正常运行.当然,将/proc/sys/vm/panic_on_oom参数设置为0,则告诉系统内核,如果系统发生内存溢出,就可以调用oom_killer(OOM终结者)功能,来杀掉最胖的那头进程(rog...

2018-05-27 11:56:54

配置catalina.out的日志格式

启动 Tomcat 时, catalina.out 中输出的日志格式可能不太理想。看看某些版本默认的格式:四月 24, 2018 6:49:32 下午 org.apache.catalina.startup.Catalina start信息: Server startup in 9772 ms有点别扭, 想要调整成下面的格式:24-Apr-2018 18:52:16.13...

2018-05-07 19:27:33

没有立场的专业人士最容易背锅

今天在tweet上看到一幅有趣的漫画: http://theoatmeal.com/comics/design_hell。说的是上级领导怎样坑死一个专业的设计师。 漫画很有趣, 而且在实际工作中也经常发生这种悲剧。到底是谁的锅 ?普通员工和专业人士的不同, 在于普通员工需要别人指挥着干活, 而专业人士能够为BOSS提供各种决策建议。招聘普通员工的关注点主要是执行能力, 要听指挥, 还能出活...

2018-03-07 20:08:25

spring发送Email-验证码-图片-附件-解决乱码

本文简要介绍如何通过Spring框架的支持,通过QQ邮箱来发送邮件,包括简单文本,附件、以及内联图片、HTML以及HTTP图片。spring-context-support很早就内置支持邮件发送。当然, 官方文档明确指出, 需要依赖 JavaMail 这个库。在这个年代, 我们很少自己搭建 smtp 服务器来发送邮件, 一般都是使用邮件提供商的服务。 例如 QQ邮箱, 企业邮箱...

2018-03-01 15:28:20

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • 技术圈认证
    技术圈认证
    博客专家完成年度认证,即可获得
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。