爱豆吧!
open-menu closeme
Home
随笔
Speeches
My Books
About
🌐
English Português
  • Sort源码实现比较Go&Java语言风格(3)

    calendar Dec 1, 2015 · 1 min read · Golang Java 语言  ·
    Share on: twitter facebook linkedin copy

    前面两部分分别描述了Go和java两种语言对sort的使用方式和源码实现。作为go初学者,最想做的是通过例子和源码来对新的语言有个理解。这部分就结合自己的理解整理下,可以看到,是非常主观。 4 语言语法比较 可以看到,两种语言的思路基本上是一样的,用户必须定义比较规则。在排序过程中都要考察集合长度,使用用户定义的比较规则,然后调整元素位置来达到排序的效果,对应go的interface要求的三个方法。但是还是有挺多不同。 首先从使用方式上看,go的规则(通过方法来体现)定义在集合上,并且定义了三个方法,分别获取集合的状况,元素比较的规则,元素位置操作的方法;而java的规则定义在元素上,用户只用一个元素比较的规则compareTo就够 …


    Read More
  • Sort源码实现比较Go&Java语言风格(2)

    calendar Dec 1, 2015 · 2 min read · Golang Java 语言  ·
    Share on: twitter facebook linkedin copy

    接上篇博文,工作中用到了go排序的功能,作为go新手,在参照着例子,并读了go的sort.go部分涉及的源码,了解了go中排序的细节和实现算法,这些在上篇博文中有介绍。作为一个java ZHONGDU*2的用户,不由自主的想到了java中对应实现的样子,在这里也非常简要的贴出来,描述下java中排序的用法,和java源码中对应部分的实现,比较好奇java是和go一样,也用的时候快速排序吗? 3 Java 排序源码解析 主要代码Looks like this: 3.1 使用例子 1public class Person implements Comparable<Person> { 2private …


    Read More
  • Sort源码实现比较Go&Java语言风格(1)

    calendar Dec 1, 2015 · 3 min read · Golang Java 语言  ·
    Share on: twitter facebook linkedin copy

    1 前言 刚开始拥抱go,非常新鲜!才使用没多久,属于没有经验,有一点感受的那种。具体也说不了特别清楚,就是觉得:简单,直接,灵活,方便。作为一个 java 重度中毒(ZHANGDU*2)用户,过程中还是习惯对照着思考,至少在这个阶段。也好,发现对照着想,似乎更容易融会贯通。 对资深的go程序员来说,应该都是非常基础基本的问题,但也挡不住咱这个小白要发表下感想。 第一篇文章首先结合最近做一个小feature时用到go中元素排序的功能,顺便了解下两种语言中排序功能的使用方式,各自源码中对排序功能的实现。当然最主要的是在这个过程中,作为go初学者对语言的体会和理解。 2 Go排序源码解析 现在一般不太会自己写排序算法的实现了,就去搜go …


    Read More
  • 戏(细)说Executor框架线程池任务执行全过程(下)

    calendar Jun 5, 2015 · 2 min read · Infoq Executor Java 并发 语言  ·
    Share on: twitter facebook linkedin copy

    归档下发表于infoq.com 2015年6月的两篇文章。本来是一篇文章,经过Infoq编辑Alice Ding建议,拆分为<上>和<下>两部分。谢谢Alice对文章的细心校对,帮我发下了其中的很多问题。添加下infoq要求的声明:本文为InfoQ中文站特供稿件,首发地址为:http://www.infoq.com/cn/articles/executor-framework-thread-pool-task-execution-part-02 。如需转载,请与InfoQ中文站联系。 内容综述 基于Executor接口中将任务提交和任务执行解耦的设计,ExecutorService和其各种功能强大的实现类提供 …


    Read More
  • 戏(细)说Executor框架线程池任务执行全过程(上)

    calendar Jun 5, 2015 · 2 min read · Infoq Executor Java 并发 语言  ·
    Share on: twitter facebook linkedin copy

    归档下发表于infoq.com 2015年6月的两篇文章。本来是一篇文章,经过Infoq编辑Alice Ding建议,拆分为<上>和<下>两部分。谢谢Alice对文章的细心校对,帮我发下了其中的很多问题。添加下infoq要求的声明:本文为InfoQ中文站特供稿件,首发地址为:http://www.infoq.com/cn/articles/executor-framework-thread-pool-task-execution-part-01。如需转载,请与InfoQ中文站联系。 内容综述 基于Executor接口中将任务提交和任务执行解耦的设计,ExecutorService和其各种功能强大的实现类提供了 …


    Read More
  • 源码剖析AQS在几个同步工具类中的使用

    calendar Apr 6, 2015 · 10 min read · AQS 并发 java  ·
    Share on: twitter facebook linkedin copy

    1. 前言 AQS(AbstractQueuedSynchronizer)是 java.util.concurrent的基础。J.U.C中宣传的封装良好的好用的同步工具类Semaphore、CountDownLatch、ReentrantLock、ReentrantReadWriteLock、FutureTask等虽然各自都有不同特征,但是简单看一下源码,每个类内部都包含一个如下的内部类定义: abstract static class Sync extends AbstractQueuedSynchronizer 同时每个类内部都包含有这样一个属性,连属性名都一样!注释已经暗示了,该类的同步机制正是通过这个AQS的子类来完成的。不 …


    Read More
  • 【hadoop代码笔记】Mapreduce shuffle过程之Map输出过程

    calendar Feb 5, 2014 · 15 min read · hadoop java mapreduce 源码  ·
    Share on: twitter facebook linkedin copy

    一、概要描述

    shuffle是MapReduce的一个核心过程,因此没有在前面的MapReduce作业提交的过程中描述,而是单独拿出来比较详细的描述。 根据官方的流程图示如下:

    <img
      loading="lazy"
      decoding="async"
      alt=""
      
        class="image_figure image_internal image_unprocessed" …</picture></figure></p>

    Read More
  • 【hadoop代码笔记】hadoop作业提交之汇总

    calendar Feb 1, 2014 · 1 min read · hadoop java mapreduce 源码  ·
    Share on: twitter facebook linkedin copy

    一、概述 在本篇博文中,试图通过代码了解hadoop job执行的整个流程。即用户提交的mapreduce的jar文件、输入提交到hadoop的集群,并在集群中运行。重点在代码的角度描述整个流程,有些细节描述的并不那么详细。 汇总的代码流程图附件:hadoop_mapreduce_jobsubmit 二、主要流程 Jobclient通过RPC方式调用到jobtracker的submitJob方法提交作业,包括作业的jar、分片和作业描述。 JobTracker的submitJob方法吧job加入到内存队列中,由独立的线程取出每个JobInProgress的对象调用其initTasks方法,根据传入的作业分片创建对应数量 …


    Read More
  • 【hadoop代码笔记】Hadoop作业提交之Child启动reduce任务

    calendar Jan 23, 2014 · 24 min read · hadoop java mapreduce 源码  ·
    Share on: twitter facebook linkedin copy

    一、概要描述 在上篇博文描述了TaskTracker启动一个独立的java进程来执行Map任务。接上上篇文章,TaskRunner线程执行中,会构造一个java –D** Child address port tasked这样第一个java命令,单独启动一个java进程。在Child的main函数中通过TaskUmbilicalProtocol协议,从TaskTracker获得需要执行的Task,并调用Task的run方法来执行。在ReduceTask而Task的run方法会通过java反射机制构造Reducer,Reducer.Context,然后调用构造的Reducer的run方法执行reduce操作。不同于map任务,在执 …


    Read More
  • 【hadoop代码笔记】hadoop作业提交之Child启动map任务

    calendar Jan 22, 2014 · 7 min read · hadoop java mapreduce 源码  ·
    Share on: twitter facebook linkedin copy

    一、概要描述 在上篇博文描述了TaskTracker启动一个独立的java进程来执行Map或Reduce任务。在本篇和下篇博文中我们会关注启动的那个入口是org.apache.hadoop.mapred.Child的这个Java进程是如何执行用户定义的map或Reduce任务的。 接上篇文章,TaskRunner线程执行中,会构造一个_java –D** Child address port tasked_这 样第一个java命令,单独启动一个java进程。在Child的main函数中通过TaskUmbilicalProtocol协议,从 TaskTracker获得需要执行的Task,并调用Task的run方法来执行,而Task …


    Read More
    • ««
    • «
    • 1
    • 2
    • »
    • »»

Recent Posts

  • 云原生工程师入坑AI深度学习系列(二):给昌子解释DeepSeek的模型蒸馏
  • 今天起,我就成了您
  • 云原生工程师入坑AI深度学习系列(一):从线性回归入门神经网络
  • 豆哥国庆环太湖Day5:西山岛(苏州-太湖-杭州)
  • 豆哥国庆环太湖Day4:渔洋山(常州-太湖-苏州)
  • 豆哥国庆环太湖Day3:恐龙园(常州-常州-常州)
  • 豆哥国庆环太湖Day2:三国城(宜兴-无锡-常州)
  • 豆哥国庆环太湖Day1:遇太湖(杭州-湖州-宜兴)

Categories

ISTIO 45 服务网格 44 随笔 23 图书 17 ENVOY 16 HADOOP 12 ISTIO权威指南 11 演讲 10 数据库 7 豆哥 7 云原生服务网格ISTIO原理实践架构与源码解析 6 发表 6 机器学习 5 JAVA 4
All Categories
AI2 ENVOY16 GOLANG3 HADOOP12 ISTIO45 ISTIOCON3 ISTIO权威指南11 JAVA4 JVM1 KARMADA1 KUBECON4 KUBERNETES3 SERVICEMESHCON1 云原生2 云原生服务网格ISTIO原理实践架构与源码解析6 分类2 发表6 图书17 并发3 数据库7 服务网格44 机器学习5 演讲10 父亲1 神经网络2 聚类1 豆哥7 铁路1 随笔23
[A~Z][0~9]

Tags

ISTIO 44 服务网格 43 演讲 24 KUBECON 20 随笔 20 JAVA 18 最佳实践 18 图书 17 ENVOY 16 RESPONSEFLAGS 16 访问日志 16 HADOOP 12 MAPREDUCE 12 源码 12
All Tags
123061 AI2 AQS1 AUTHORIZATIONPOLICY1 CERT-MANAGER1 DC2 DEEPSEEK1 DI1 DPE1 ENGLISH1 ENVOY16 EXECUTOR2 FI1 G201 GOLANG3 GRE1 HADOOP12 INFOQ3 ISTIO44 ISTIOCON3 ISTIO权威指南11 JAPANESE1 JAVA18 JVM1 K-MEDOIDS1 KARMADA1 KUBECON20 KUBERNETES3 LINEAR-REGRESSION1 MAPREDUCE12 NC1 NR1 ORACLE3 PILOT2 RESPONSEFLAGS16 RL2 SERVICEENTRY1 SERVICEMESHCON1 SPRING-CLOUD1 SPRINGCLOUD1 UC1 UF1 UH1 UPE1 URX1 UT1 にほんご1 事务1 云原生2 云原生服务网格ISTIO原理实践架构与源码解析6 信2 军训2 分类2 发表1 国际米兰1 图书17 垃圾回收1 多集群2 太湖5 安全2 并发3 微服务1 执行计划1 数据库1 新冠1 旅游5 日语1 昌子1 最佳实践18 服务网格43 机器学习2 案例4 模型蒸馏1 深度学习2 源码12 演讲24 父亲1 祖母2 神经网络2 程序员3 索引3 聚类1 表连接1 西安1 访问日志16 语言6 调用链2 豆哥10 足球1 铁路2 随笔20 韧性1
[A~Z][0~9]
浙ICP备18050493号-1 浙公网安备 33010802006262号

Copyright  浙ICP备18050493号-1 浙公网安备 33010802006262号. All Rights Reserved

to-top