Skip to content

Instantly share code, notes, and snippets.

View stormcat24's full-sized avatar
🏠
Working from home

Akinori Yamada stormcat24

🏠
Working from home
View GitHub Profile

Looking into the Future

futures-rs is the library which will hopefully become a shared foundation for everything async in Rust. However it's already become renowned for having a steep learning curve, even for experienced Rustaceans.

I think one of the best ways to get comfortable with using a library is to look at how it works internally: often API design can seem bizarre or impenetrable and it's only when you put yourself in the shoes of the library author that you can really understand why it was designed that way.

In this post I'll try to put down on "paper" my understanding of how futures work and I'll aim to do it in a visual way. I'm going to assume you're already somewhat familiar with Rust and why futures are a useful tool to have at one's disposal.

For most of this post I'll be talking about how things work today (as of September 2017). At the end I'll touch on what's being proposed next and also make a case for some of the changes I'd like to see.

If you're interested in learning more ab

@yutori
yutori / redis_cluster.md
Last active April 20, 2019 23:17
Redis Cluster のリシャーディングとorphaned masterの話 - CyberAgent エンジニア Advent Calendar 2014 2日目

Redis Cluster のリシャーディングとorphaned masterの話

(2019/04 追記 こちらの情報は非常に古く、またRC版での結果となります。記録として残していますが参考になさらないでください

CyberAgent エンジニア Advent Calendar 2014 2日目です。

昨日に引き続き、秋葉原ラボの柿島が担当します。仕事ではHadoopクラスタの運用を中心に、秋葉原ラボのインフラ/ミドルウェアまわりを担当しています。今年はHadoop、mesos、Aerospikeと分散型のシステムを触る機会が多い1年でした。

この記事のテーマはRedis Clusterです。Redis Clusterが使えるようになるRedis 3.0.0は10月にRC1がリリースされました。2015年のQ1にstableリリースを目指しているようです。

@okumin
okumin / akka-persistence.md
Created September 28, 2014 08:55
akka-persistenceのプラグインをつくろう
@TLmaK0
TLmaK0 / service-init
Last active August 29, 2015 13:57
Init.d script that I uses to start akka as daemon in Centos 6.4
#!/bin/sh
#
# description
#
# chkconfig: 3 95 4
# description: description
### BEGIN INIT INFO
# Provides:
# Required-Start:
@j5ik2o
j5ik2o / gist:5288729
Last active February 7, 2016 03:29
IntelliJ IDEA/Eclipse対応 sbt プロジェクトの作成手順

事前準備

Scala & SBT & gitter8

$ brew install scala sbt giter8

IDE

@propensive
propensive / json.scala
Created November 26, 2012 14:53
Rapture I/O JSON extraction example
import rapture.io._
// Let's parse some JSON
val src: Json = Json.parse("""
{
"foo": "Hello world",
"bar": {
"baz": 42
}
}
@hayajo
hayajo / changelog_en.md
Last active July 19, 2024 05:47
ChangeLog を支える英語

ChangeLog を支える英語

ChangeLog を書く際によく使われる英語をまとめました。

ほとんど引用です。

基本形

@j5ik2o
j5ik2o / gist:2643205
Created May 9, 2012 09:14
Play2.0.1のプロジェクトがIntelliJでビルドできない

Play 2.0.1で

$ play idea

もしくは

$ sbt gen-idea

を実行したプロジェクトをIntelliJでビルドすると以下のようなエラーが発生する。

@n-shinya
n-shinya / gist:2224147
Created March 28, 2012 06:09
[Play1.2.4]認証つきカスタムリポジトリに配置されたjarとPlayモジュールの依存性解決

認証つきMavenリポジトリに配置されたjarとPlayモジュールの依存性解決

こんなシチュエーション。

  • 公開したくないjarとPlayモジュールをBasic認証付きの同一サーバ(Mavenリポジトリ)においている

  • play dependencies を叩いた時にこのサーバからjarとPlayモジュールをダウンロードして依存性を解決したい

手順

@stormcat24
stormcat24 / test
Created March 22, 2012 19:16
Test
val text = "test."
println(text)