java技术圈 为您找到相关结果 19

浅析字节存储序列的大小端存储方式

基础 内存地址是从低地址开始进行编号的,用16进制来进行编号,比如内存的开始地址(即低地址)0x0000,然后内存偏移以字节为单位,比如0x0001表示从0x0000位置偏移到后面1个字节,即偏移8bit.字节的高低位是俗成约定的,比如字节序列0x12345678,由于一个16进制的转为2进制占四个2进制(2^4=16,进制转换基础),那么0x12则可以转为8个二进制,也就是8bit=1byte,也就是1字节,回到字节的高低位的俗成约定,0x12为最高位,0x78为字节序列的最低位置 什么是大端和小端 Big-Endian和Little-Endian的定义如下: 1. Little-Endian就是低位字节排放在内存的低地址端,高位字节排放在内存的高地址端。 2. Big-Endian就是高...阅读全文

博文 2019-04-03 14:30:28 www.allocmem.com

为什么说字节跳动“根本没有管理”?

就在今年的3月份,字节跳动迎来新一轮组织架构大调整。 不同于同时期崛起的创业企业,过去很长一段时间里,字节跳动的架构中极少有CXO的身影,更没有CFO、CMO和CTO。 14名高管直接向CEO张一鸣汇报,涵盖公司所有职能,这一模式让张一鸣很难有富余的时间精力去做除了团队管理和业务沟通以外的事。 ![image.png](https://img-blog.csdnimg.cn/2020063015264347.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxMTM3NDkz,size_16,color_FF...阅读全文

字节跳动不平凡的崛起之路

![在这里插入图片描述](https://img-blog.csdnimg.cn/2020061514414556.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxMTM3NDkz,size_16,color_FFFFFF,t_70) 如何定义字节跳动这家公司?它是一家以娱乐为主的公司,还是一家以新闻资讯为主的公司?如何定义今日头条这款超级爆品?它是一个新闻媒体,还是一个移动互联网时代的资讯嫁接平台? 同样,如何定义创始人张一鸣,未来他会成为中国的传媒大亨,还是成为中国智能算法的第一人? 1、低调的独角兽 ...阅读全文

linux sort,uniq,cut,wc命令详解 - ggjucheng

sort sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出。如果 File 参数指定多个文件,那么 sort 命令将这些文件连接起来,并当作一个文件进行排序。 sort语法 [root@www ~]# sort [-fbMnrtuk] [file or stdin] 选项与参数: -f :忽略大小写的差异,例如 A 与 a 视为编码相同; -b :忽略最前面的空格符部分; -M :以月份的名字来排序,例如 JAN, DEC 等等的排序方法; -n :使用『纯数字』进行排序(默认是以文字型态来排序的); -r :反向排序; -u :就是 uniq ,相同的数据中,仅出现一行代表; -t :分隔符,默认是用 [tab] 键来分隔; -k :以那个区间 (field) 来...阅读全文

博文 2021-01-28 12:40:43 博客园

半导体科普三 CPU

CPU主要包括逻辑运算单元和存储单元,我们讲讲半导体如何实现逻辑运算功能和存储功能。半导体实现逻辑运算的功能,这很大程度源于MOS晶体管开关切换的频率可达一秒几百次,几万次,甚至几千万次。但是具体是如何根据这个特性实现CPU逻辑运算功能的呢,下边会有详细的说明。而半导体实现存储功能,其实就是写入并保持区分两个不同的状态就好,这样就可以记录二进制数据,也就可以记录数据世界了。逻辑运算逻辑运算的理论基础是数理逻辑学的布尔代数,布尔代数的基础就是,与(AND)、或(OR)、非(NOT),这是高中学到的概念。布尔代数相关规则其中三大基本逻辑电路(也叫门电路)就是NOT电路(非门)、OR电路(或门)、AND电路(与门)。三生万物,这三大门电路可以组成所有有趣的逻辑运算电路,以实现数字运算和逻辑运算。而...阅读全文

Java 正确的做字符串编码转换 - 月下狼的个人页面

【推荐阅读】微服务还能火多久?>>> 字符串的内部表示? 字符串在java中统一用unicode表示( 即utf-16 LE) , 对于 String s = "你好哦!"; 如果源码文件是GBK编码, 操作系统(windows)默认的环境编码为GBK,那么编译时, JVM将 按照GBK编码将字节数组解析成字符,然后将字符转换为unicode格式的字节数组,作为内部存储。 当打印这个字符串时,JVM 根据操作系统本地的语言环境,将unicode转换为GBK,然后操作系统将GBK格式的内容显示出来。 当源码文件是UTF-8, 我们需要通知编译器源码的格式,javac -encoding utf-8 ... , 编译时,JVM按照utf-8 解析成字符,然后转换为unicode格式的字节数组, ...阅读全文

博文 2020-04-26 07:05:42 OSCHINA

多图对比在腾讯、阿里、字节跳动的工作区别?

互联网人爱相互跳槽,腾讯和阿里一直相互流动,近两年势头强劲的字节跳动也成为跳槽热门去向,那么在这三家公司工作有什么区别呢?一起来看——​旗舰产品​擅长领域​腾讯:是社交领域的霸主;阿里:是电商界的巨头;字节跳动:是内容领域的王者。公司特色​腾讯:产品文化,小马哥是产品出身;阿里:运营文化,马爸爸口才世界第一;字节跳动:技术文化,一鸣同学是技术出身。公司成立​腾讯和阿里:早于 2000 年成立的老牌巨头;字节跳动:2012 年成立的互联网新贵。7 年增长​腾讯、阿里平稳发展,字节是后起之秀,势头猛烈。公司总部​腾讯:总部在深圳科技园,周边都是互联网公司;阿里:总部在杭州余杭大农村,周边都是高速;字节跳动:总部在北京北三环,周边都是名牌大学。全球化办公室​腾讯:全球化公室 70+;阿里:全球化办...阅读全文

博文 2020-05-20 07:55:55 CORNERSTONE

大小端序及socket通信字节序问题_憧憬,思考,奋斗,飞翔

大端小端序概念 讲概念前,先插个小东西,之前搞混高字节、高地址、低字节、低地址这几个概念,之后理解大小端序就费劲了些。故画了下图: 大端序(big-Endian):高字节保存在内存的低地址,低字节保存在内存的高地址。 小端序(little-Endian):高字节保存在内存的高地址,低字节保存在内存的低地址。 概念较抽象,可结合下图来理解: 大小端优缺点 存在即是合理,大端的优点就是小端的缺点,反之亦然。 大端优点:符号位在所表示数据内存的第一个字节,便于快速判断数据的正负和大小。 小端优点:内存的低地址存放数据低字节,大数强制转换小数时效率高,直接丢弃高地址数据即可;cpu在做数值运算时依次从低到高取数运算即可,效率高效。 Socket通信字节序问题 IP/TCP网络传输时采用网络字节序(即...阅读全文

博文 2021-08-30 12:15:30 CSDN博客_socket 大小端

Hadoop中的Mapper和Reducer数量设定

在对Mapper调优的过程中,一个经验法则是: map任务最好拥有一分钟以上的运行时间。 因为如果任务运行时间过短,将导致在整个作业的执行过程中任务启动所花费的时间过大,从而降低了实际的任务执行效率。 对map任务的运行时间影响最大的是Mapper的个数,不过与Reducer不同,Mapper的个数是无法显示指定的。 调节Mapper数量的一种方式是设置参数mapred.jobtracker.maxtasks.per.job, 但其只能限制每个job中并发运行的map或reduce任务的上限,而当实际运行的map数低于该上限时,该参数将失效。 如果想要对Mapper个数进行更加直接有效的控制,需要指定输入数据的分片大小。 输入分片(input split)是MapReduce框架为使map任...阅读全文

博文 2020-08-31 02:33:58 Summer is Green

背景 又是一年一度的秋季校招开始了,以往的校招各个公司都会在公司现场或者学校现场安排学生进行现场面试?但是今年由于疫情的原因,不允许让同学在现场进行一个面试,所以今年的面试形式就从线下转到了线上,面试形式的转变,但是我们考核学生的方式依旧没有转变。校招的同学和社招的同学有很大的不同,他们没有丰富的工作经验,没有太多的项目经历,那么我们如何去衡量一个校招的同学呢?那就是基础和潜力,怎么去理解基础呢?俗话说不积跬步,无以至千里,不积小流,无以成江海,如果没有一个好的基础那么怎么才能成为一个优秀的工程师呢。如何去考察一个学生基础的好坏呢?我觉得有三个方面比较重要,计算机网络,操作系统以及算法和数据结构,通常来说计网考察得特别多,常见的一些问题:网络模型分层TCP和UDP的区别TCP三次握手和四次挥...阅读全文

博文 2020-09-06 14:35:04 mp.weixin.qq.com

定位IO瓶颈的方法,iowait低,IO就没有到瓶颈? - timer_go

通过分析mpstat的iowait和iostat的util%,判断IO瓶颈 IO瓶颈往往是我们可能会忽略的地方(我们常会看top、free、netstat等等,但经常会忽略IO的负载情况),今天给大家详细分享一下如何确认一台服务器的IO负载是否到达了瓶颈,以及可能优化、定位的点。 mpstat中看CPU的iowait高了,难道IO就瓶颈了吗??? 先来看一台典型的IO密集型服务器的cpu统计图: 可以看到,CPU总使用率不高,平均1.3%,max到5.6%,虽然大部分都耗在了iowait上,但才百分之五左右,应该还没到瓶颈吧??? 错了!这里要特别注意:iowait≠IO负载,要看真实的IO负载情况,一般使用iostat –x 命令: 你会发现iowait虽然只有5%,但是iostat中看到...阅读全文

博文 2020-11-13 09:43:04 博客园

关于Java中bytes到String的转换

为什么想要写这个,是因为在上周,表格存储的一个客户,告知我们在将数据通过DataX从OTS导出到ODPS后,发现数据『丢失』了。而在调查过后,发现数据并不是所谓的『丢失』了,而是数据被『改变』了。 什么原因导致数据发生了『改变』呢?却是因为一个大部分Java程序员都会忽略的问题导致的,所以我觉得有必要单独拿出来讲讲。 首先看下如下代码: byte[] original1 = new byte[]{(byte)0xef, (byte)0x8f, (byte)0x8f}; byte[] transformed1 = new String(original1).getBytes(); System.out.println(Arrays.toString(original1)); System.ou...阅读全文

博文 2022-03-27 06:14:42 阿里云开发者社区

使用 Delete By Query API 的方式删除ES索引中的数据 - 腾讯云开发者社区

一、前言| ES作为现今最流行的搜索存储库,我们需要定期去清理ES集群的数据以保证集群处在一个最佳负载状态,那么如何去删除这些数据呢,我们今天来介绍一种比较常见的通过Delete By Query的方式去删除索引中的数据。二、Delete By Query API 介绍 怎么理解这个API呢?实际是批量删除数据的意思 功能:根据特定的查询条件对ES相关索引中某些特定的文档进行批量删除。POST index_name/_delete_by_query { "query": { //这些是自定义查询条件,根据查询条件去批量删除 "match": {//请求体跟Search API是一样的 "message": "some message" } } }复制Delete By Query 删除原理:...阅读全文

博文 2022-08-24 07:40:44 腾讯云

重新认识 Java 中的内存映射(mmap)-腾讯云开发者社区

mmap 基础概念mmap 是一种内存映射文件的方法,即将一个文件映射到进程的地址空间,实现文件磁盘地址和一段进程虚拟地址的映射。实现这样的映射关系后,进程就可以采用指针的方式读写操作这一段内存,而系统会自动回写脏页到对应的文件磁盘上,即完成了对文件的操作而不必再调用 read,write 等系统调用函数。相反,内核空间对这段区域的修改也直接反映用户空间,从而可以实现不同进程间的文件共享。mmap工作原理操作系统提供了这么一系列 mmap 的配套函数void *mmap(void *start, size_t length, int prot, int flags, int fd, off_t offset); int munmap( void * addr, size_t len); in...阅读全文

博文 2023-09-13 16:43:08 腾讯云

技术干货|腾云忆想架构师教你解决Elasticsearch集群负载不均的问题

导读腾讯云 Elasticsearch Service(ES)是基于开源搜索引擎 Elasticsearch 打造的高可用、可伸缩的云端全托管的 Elasticsearch 服务,包含 Kibana 及常用插件,并集成了安全、SQL、机器学习、告警、监控等高级特性(X-Pack)。本文描述在实际使用中,经常会遇到的ES集群负载不均的问题,并结合多种场景进行分析、解决,以及如何避免。作者简介岳涛腾云忆想大数据产品架构师,多年分布式、高并发大数据系统的研发、系统架构设计经验,擅长主流大数据架构技术平台的落地和实施。目前专注于大数据架构相关组件的研究推广和最佳实践的沉淀,致力于帮助企业完成数字化转型。一、背景ES集群在某些情况下会出现CPU使用率高的现象,具体有两种表现:1. 个别节点CPU使用率...阅读全文

Golang bytes缓冲区使用介绍_golang bytebuffer_小镇程序员的博客

缓冲区原理简介: go字节缓冲区底层以字节切片做存储,切片存在长度len与容量cap, 缓冲区写从长度len的位置开始写,当len>cap时,会自动扩容。缓冲区读会从内置标记off位置开始读(off始终记录读的起始位置),当off==len时,表明缓冲区已全部读完 并重置缓冲区(len=off=0),此外当将要内容长度+已写的长度(即len) <= cap/2时,缓冲区前移覆盖掉已读的内容(off=0,len-=off),从避免缓冲区不断扩容。 package main import ( "bytes" "fmt" ) func main() { byteSlice := make([]byte, 20) byteSlice[0] = 1 // 将缓冲区第一个字节置1 byteBuffer ...阅读全文

博文 2023-09-13 14:31:20 CSDN博客

HBase如何实现write写入优化_云数据库HBase版

HBase基于LSM模式,写是写HLOG及Memory的,也就是基本没有随机的IO,所以在写链路上性能高效还比较平稳。很多时候,写都是用可靠性来换取性能。 批量写 也是为了减少rpc的次数HTable.put(List) Auto Flush autoflush=false可以提升几倍的写性能,但是还是要注意,直到数据超过2 M(由hbase.client.write.buffer决定)或用户执行了hbase.flushcommits()时才向regionserver提交请求。需要注意并不是写到了远端。 HTable.setWriteBufferSize(writeBufferSize)可以设置buffer的大小。 服务端优化 WAL Flag 不写WAL可以成倍提升性能,因为不需...阅读全文

博文 2023-05-16 08:11:25 阿里云帮助中心

Java中RandomAccessFile用法

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。 文章目录 介绍 RandomAccessFile 使用 创建对象 写方法 读取方法 介绍 java.io.RandomAccessFile 1、读写文件的工具 2、将文件中的字节数据,当作数组,用下标访问指定位置的字节值 RandomAccessFile 既可以读取文件内容,也可以向文件输出数据。同时,RandomAccessFile 支持“随机访问”的方式,程序快可以直接跳转到文件的任意地方来读写数据。 由于 RandomAccessFile 可以自由访问文件的任意位置,所以如果需要访问文件的部分内容,而不是把文件从头读到尾,使用 RandomAccessFile 将是更好的选择。 RandomAccessFile 允许自由定义文...阅读全文

博文 2023-05-15 06:07:21 掘金

解决项目版本冲突——maven-shade插件使用

背景 当我们在maven项目中引入第三方组件时,三方组件中的依赖可能会与项目已有组件发生冲突。 比如三方组件中依赖httpclient的版本是4.5.x,而项目中已有的httpclient版本是3.1.x,那么此时就会产生一下两种情况: 如果用三方组件的高版本httpclient覆盖原有的低版本httpclient,有可能会导致原来项目启动运行失败。即使高版本兼容低版本,也不能允许开发人员有这样高风险的操作 如果在三方maven依赖中对其对依赖的httpclient在引入时使用进行排除,使三方组件使用项目中的低版本httpclient,此时可能会因为版本不一致导致三方组件无法使用 在这样的情况下我们应当如何保证不影响项目原有依赖版本的情况下正常使用三方组件呢?此时可以考虑使用maven-sh...阅读全文