Skip to content

Instantly share code, notes, and snippets.

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

xiaodao daog1

🏠
Working from home
View GitHub Profile
@daog1
daog1 / 0_reuse_code.js
Created January 15, 2016 09:15
Here are some things you can do with Gists in GistBox.
// Use Gists to store code you would like to remember later on
console.log(window); // log the "window" object to the console

Nutch介绍

@(Xcaspar)[nutch]

介绍

Nutch是一个爬虫和检索于一体的一个可扩展、高性能的框架。目前有两种版本:最新的分别是v1.8和v2.2.1,两者的区别是底层存储不同,1.X版本基于Hadoop(目前1.2.0版本)架构的,底层存储使用HDFS文件系统。而2.x采用Apache的Apache Gora ORM框架进行存储访问,支持HBase、MySQL等。 两者都有个共同点:必须自己编译源码文件。
说到编译,Nutch是Apache的一个项目,所以项目的编译也是采用自己的ant进行build,jar包管理使用ivy。项目编译还算简单,大体步骤如下:

  • 由于下载的包中缺少代码质量检查的sonar包,但是build.xml文件涉及到,所以,你要自己下载sonar-ant-task jar包,然后更改build.xml中涉及到sonar task的classpath,将地址指向包的位置,比如:
  • 然后ant,此阶段所需时间较长。
  • build之后,默认会有个runtime文件夹,里面包含deploy和local文件夹,分别是部署和本地运行nutch和crawl文件以及相应的配置文件。
@daog1
daog1 / gist:efb6baab5c3f50cc54aa
Created January 15, 2016 09:37 — forked from xishuixixia/gist:8aa9a7888f0ddcf835c1
邹达:国内BaaS平台正在落地

BaaS(Backend as a Service)是一种新型的云服务,旨在为移动和Web应用提供后端云服务,包括云端数据/文件存储、账户管理、消息推送、社交媒体整合等。BaaS是垂直领域的云服务,随着移动互联网的持续火热,BaaS也受到越来越多的开发者的亲睐。它作为应用开发的新模型,可以降低开发者成本,让开发者只需专注于具体的开发工作。

BaaS是移动中间件的替代品(或者说备选方案),它使用统一的API和软件开发工具包(SDK)来连接移动应用到后端云存储,传统的移动中间件通过本地的物理服务把后端服务集成到应用中。而BaaS通过云来集成后端服务。中间件和BaaS的最大不同是它们是否包含或者提供云的服务,BaaS可以说是PaaS平台在移动垂直领域的延伸,更可以说是移动中间件和云的融合。而现在它们都在以不同的形式来存在,云的优势很明显,那就是简单、成本低廉,中间件的优势是数据安全,易于扩展。所以从现在的趋势来看,它们不存在明显的取代关系,只不过可能以后BaaS的体量会更大。移动中间件将更多的被有能力的企业使用,同时也会有越来越多的中小型企业、开发者选择使用BaaS。

随着移动互联网的发展,移动行业的分工也会像其它行业一样逐渐细化,后端服务就是这样被抽象出来,它统一向开发者提供文件存储、数据存储、推送服务等实现难度较高的功能,以帮助开发者快速开发移动应用。在国外,BaaS服务已经受到巨头的重视,2013年4月,Facebook收购Parse;2014年6月,苹果发布了CloudKit;2014年10月,Google收购了Firebase。Parse、CloudKit、Filrebase都是国外知名的BaaS类产品,苹果和谷歌通过BaaS服务可以更好的完善其生态圈,Parse也可以帮助Facebook建立它在移动端的地位,从巨头们在BaaS方面的布局也可以看出BaaS的价值。总体来说,BaaS平台的优势包括:

  • 提高效率:减少移动APP开发中各个环
#!/usr/bin/env python
import unittest
from math import ceil
from pdb import set_trace as bp
class Page(object):
def __init__(self, number, current):
self.number = number
self.current = current
@daog1
daog1 / build_ffmpeg_android
Created February 15, 2016 06:46 — forked from lengyue524/build_ffmpeg_android
Build ffmpeg on OS X 10.9
此处主要参考 http://harryhsu.logdown.com/posts/198416-build-ffmpeg-on-mac-os-109
根据我的编译过程做了适当修改
1. Download NDK
https://developer.android.com/tools/sdk/ndk/index.html
我下载的版本是android-ndk-r10,不同的版本在下面的build脚中本需要修改的地方大致相同.
2. Download ffmpeg source code
下载 ffmpeg(http://www.ffmpeg.org/download.html)
推荐 git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg
set DEP_OPENSSL_INCLUDE=C:\OpenSSL-Win64\include
set OPENSSL_INCLUDE_DIR=C:\OpenSSL-Win64\include
set OPENSSL_LIBS=ssleay32MT:libeay32MT
set OPENSSL_LIB_DIR=C:\OpenSSL-Win64\lib\VC
path C:\OpenSSL-Win64\bin;%PATH%
cargo test
@daog1
daog1 / gist:472e70e051b9f26f1e88
Created February 18, 2016 03:49 — forked from huowa222/gist:9640856
recommendation opensource list
原文地址:http://in.sdo.com/?p=1707
收集和整理了目前互联网上能找到的开源推荐系统,并附上了个人的一些简单点评(未必全面准确),这个列表是目前为止比较全面的了,希望对大家了解掌握推荐系统有帮助(文/陈运文)
SVDFeature
由上海交大的同学开发,采用C++语言,代码质量很高。去年我们参加KDD竞赛时用过,很好很方便,而且出自咱们国人之手,所以置顶推荐!
项目地址:
http://svdfeature.apexlab.org/wiki/Main_Page
SVDFeature包含一个很灵活的Matrix Factorization推荐框架,能方便的实现SVD、SVD++等方法, 是单模型推荐算法中精度最高的一种。SVDFeature代码精炼,可以用相对较少的内存实现较大规模的单机版矩阵分解运算。
另外含有Logistic regression的model,可以很方便的用来进行ensemble运算
@daog1
daog1 / supervisord
Created April 26, 2016 05:53 — forked from alejandrobernardis/supervisord
supervisord
#!/bin/sh
# /etc/rc.d/init.d/supervisord
#
# Supervisor is a client/server system that
# allows its users to monitor and control a
# number of processes on UNIX-like operating
# systems.
#
# chkconfig: 345 83 04
#
@daog1
daog1 / devops.md
Created September 6, 2016 02:55 — forked from eagleon/devops.md
各种工具

Blog:http://www.simlinux.com
Weibo:http://weibo.com/geekwolf

Bootstrapping: Kickstart、Cobbler、rpmbuild/xen、kvm、lxc、Openstack、 Cloudstack、Opennebula、Eucalyplus、RHEV
配置类工具: Capistrano、Chef、puppet、func、salstack、Ansible、rundeck、CFengine、Rudder
自动化构建和测试: Ant、Maven、Selenium、PyUnit、QUnit、JMeter、Gradle、PHPUnit
监控类工具: Cacti、Nagios(Icinga)、Zabbix、基于时间监控前端Grafana、Mtop、MRTG(网络流量监控图形工具)、Monit 、Diamond+Graphite+Grafana
微服务平台: OpenShift、Cloud Foundry、Kubernetes、Mesosphere

@daog1
daog1 / Software Process and Management.md
Created September 6, 2016 02:57 — forked from Cee/Software Process and Management.md
Software Process and Management

软件过程和管理

Chapter 1 软件过程基础

  1. 软件生产随规模增大复杂度增大
  2. 软件危机
    • 即便是应用最为广泛的软件也有大量的错误
    • 遍及我们生活各个方面的软件不可避免会出现问题,危及生命、业务,导致灾难
    • 从未真正解决
  3. 项目失败原因
    • 规模