V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
raysmond
V2EX  ›  程序员

分享我开发的技术类文章收藏/分享/交流社区 - Expper

  •  1
     
  •   raysmond ·
    Raysmond · 2015-11-09 16:49:21 +08:00 · 6123 次点击
    这是一个创建于 3062 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Expper - Explore the Internet and Share Something Useful.


    这个社区的理念很简单:

    发掘和分享互联网上的有用的技术文章!
    会员可以收藏喜欢的文章,打造统一的,简洁的,优雅的阅读体验!
    我是一个收藏,整理和阅读在线文章的重度用户。建立这个社区就是希望能够高效收藏和整理在线文章;希望大家,特别是程序员,能够发掘和分享各个领域有价值的文章,同时可以相互交流和认识。

    希望大家,特别是程序员同行们,多多支持,一起打造一个技术分享社区。


    关于开发技术

    随便说一下我开发这个网站用的众多技术

    • 框架: Spring Boot/jhipster + JPA + Hibenate + PostgreSQL
    • 前端: Angularjs + Grunt
    • 缓存和统计: Redis
    • 消息队列: RabbitMQ ,爬文章,点赞评论后文章排序,计算文章热门得分,更新文章列表,发送邮件等都是扔进了 RabbitMQ 的队列中。排序结果,列表,统计都是用 Redis 中读取。 RabbitMQ 大发好啊。
    • 文章排名算法:基于 Reddit 排名算法,同时考虑了评论数量和浏览量
    • Reddit 的网站架构给了我很多启发,大赞

    Chrome 插件

    • 一键保存文章
    • 统一格式和排版,代码高亮,类似 github gist
    • 简洁优雅的阅读体验
    • 类似 Read it later , pocket ,网站有高效的标签整理和搜索

    社区

    • 分享和交流各个技术领域的文章
    • 只会展示文章标题和摘要和原文连接, expper 绝不会公开全文转载原文
    • 通过不同的话题和标签归类整理技术文章
    • 所有话题和标签文章具有热度排序和时间排序功能

    截图

    001
    001
    001


    网站现在还是处于完善开发阶段,如果发现问题和 bug 还请告知 [email protected]
    服务器目前选的 hostus 香港 VPS ,不够稳定。已决定找个时间迁到阿里云香港 VPS 。选择境外 VPS 是因为很多技术文章都来自国外的网站,如果放在国内爬国外文章肯定不靠谱。

    第 1 条附言  ·  2015-11-09 17:23:26 +08:00
    不好意思,忘记加链接了,请戳这里 http://www.expper.com
    第 2 条附言  ·  2015-11-09 20:56:00 +08:00
    辛苦撸了两个星期,终于上线了,还请大家多多支持。
    第 3 条附言  ·  2015-11-09 21:22:15 +08:00

    重点说明一下:

    • 社区里面不会展示全文
    • 注册会员在后台可以查看到文章全文。文章已经从源站悄悄地爬过来了,只有自己可以看到。而且格式统一,内容一般都很准确地截取了正文。就这一点而言,很像 pocket 这种 read it later 应用。
    • 如果不用社区,就单纯登录进来收藏文章也非常好用, Chrome 插件一键保存。

    例如下面这篇我收藏的文章:

    http://7b1fa0.com1.z0.glb.clouddn.com/expper-001.png

    第 4 条附言  ·  2015-11-10 14:38:12 +08:00

    已经换到了 sendcloud 发送邮件,到信率应该比较高了。

    72 条回复    2015-12-16 23:22:50 +08:00
    raysmond
        1
    raysmond  
    OP
       2015-11-09 16:55:28 +08:00
    目前发送邮件使用了国外免费的 mailgun , QQ , foxmail 用户收信可能会延迟,或者进垃圾邮箱。
    ooTwToo
        2
    ooTwToo  
       2015-11-09 17:10:54 +08:00
    我是来找 GayHub 地址的
    cqcn1991
        3
    cqcn1991  
       2015-11-09 17:16:54 +08:00
    Where is the link?
    raysmond
        4
    raysmond  
    OP
       2015-11-09 17:25:55 +08:00 via iPhone
    @cqcn1991 不好意思,链接已经加上了

    http://www.expper.com
    raysmond
        5
    raysmond  
    OP
       2015-11-09 17:26:10 +08:00 via iPhone
    @ooTwToo 我没有开源
    zonghua
        6
    zonghua  
       2015-11-09 17:28:22 +08:00
    不错啊,已经熟悉 spring !
    raysmond
        7
    raysmond  
    OP
       2015-11-09 17:29:45 +08:00 via iPhone
    @zonghua spring 很好用,不过还是好多坑
    uxstone
        8
    uxstone  
       2015-11-09 17:32:36 +08:00
    有 app 吗?
    zonghua
        9
    zonghua  
       2015-11-09 17:32:58 +08:00
    @raysmond JPA 的实体模型是应该从数据库表逆向生成,还是写类去建立表?哪种方案更好?看到很多设计是不用外键的
    raysmond
        10
    raysmond  
    OP
       2015-11-09 17:44:31 +08:00
    @uxstone sorry ,没有开发 app
    raysmond
        11
    raysmond  
    OP
       2015-11-09 17:46:07 +08:00
    @zonghua 一般不会逆向生成吧。我用和 jhipster 默认的 liquibase 管理 db migration ,也是从类到 db ,但是迁移过程是 liquibase 做的
    raysmond
        12
    raysmond  
    OP
       2015-11-09 18:52:35 +08:00
    我觉得这个产品工具很好用,怎么没什么人响应呢
    acoder2013
        13
    acoder2013  
       2015-11-09 19:09:57 +08:00
    开源吗
    raysmond
        14
    raysmond  
    OP
       2015-11-09 19:15:45 +08:00
    @acoder2013 暂时没有开源的打算。后面如果我一个人维护不下去的话,也许会考虑开源
    elvba
        15
    elvba  
       2015-11-09 21:11:18 +08:00
    qq 邮箱收不到账号验证邮件 - -
    lizhenda
        16
    lizhenda  
       2015-11-09 21:15:36 +08:00
    话说,如果收藏的文章,跳转过去,源失效了肿么办...
    raysmond
        17
    raysmond  
    OP
       2015-11-09 21:17:41 +08:00
    @lizhenda 会员收藏的文章会爬取全文保存起来,但是社区里不会公开全文而已。自己登录进来可以看全文。
    raysmond
        18
    raysmond  
    OP
       2015-11-09 21:23:47 +08:00
    @elvba QQ 邮箱发布出去,初期我看到了,我会帮助你们直接激活的。你的应该已经激活了。
    elvba
        19
    elvba  
       2015-11-09 22:05:58 +08:00
    @raysmond 谢~
    wuhuaji
        20
    wuhuaji  
       2015-11-09 22:20:25 +08:00
    设计做的很不错啊,喜欢这种风格
    aitaii
        21
    aitaii  
       2015-11-09 22:22:29 +08:00
    给楼主个赞
    raysmond
        22
    raysmond  
    OP
       2015-11-09 22:25:41 +08:00
    @wuhuaji 谢谢,界面也没怎么设计,我也不太会,只会做成那么简洁的,比较容易。
    GeekCn
        23
    GeekCn  
       2015-11-09 22:30:31 +08:00
    你这 MAC 截图软件不错哦~可以分享一下吗~
    raysmond
        24
    raysmond  
    OP
       2015-11-09 22:35:29 +08:00
    @GeekCn 截图不是系统自带的么? cmd+shift+3 截屏, cmd+shift+4 截任意部分, cmd+shift+4+space 截取整个窗口
    GeekCn
        25
    GeekCn  
       2015-11-09 22:47:25 +08:00
    @raysmond 我一般都是用软件
    raysmond
        26
    raysmond  
    OP
       2015-11-09 22:50:15 +08:00
    @GeekCn 系统自动的非常不错了,特别是截取窗口的功能太赞了
    GeekCn
        27
    GeekCn  
       2015-11-09 22:54:20 +08:00
    @raysmond 我试试, QQ 截得太大了
    shoumu
        28
    shoumu  
       2015-11-09 23:05:12 +08:00
    楼主,请问你获取网页正文用的是什么方法?
    raysmond
        29
    raysmond  
    OP
       2015-11-09 23:13:02 +08:00
    raysmond
        30
    raysmond  
    OP
       2015-11-10 08:37:54 +08:00
    欢迎大家注册,下载 Chrome 插件,试用一下。
    minongbang
        31
    minongbang  
       2015-11-10 09:10:28 +08:00
    我前段时间做了一个,自己在用。都是自己写的。
    w2kn.com
    手机端精雕细琢过的。
    raysmond
        32
    raysmond  
    OP
       2015-11-10 10:16:01 +08:00
    @minongbang 你这个网站主要是论坛的功能吧,我的网站是纯分享型的,不是发帖的传统论坛社区。
    jesson
        33
    jesson  
       2015-11-10 10:25:58 +08:00
    楼主开源来看看呗。
    raysmond
        34
    raysmond  
    OP
       2015-11-10 10:31:45 +08:00
    @jesson 虽然我很支持开源,但是这个网站暂时还没有开源的打算,希望和我交流的朋友们可以 email 我 [email protected] 。谢谢。
    shoumu
        35
    shoumu  
       2015-11-10 10:33:49 +08:00
    @raysmond
    好的,多谢
    adoyle
        36
    adoyle  
       2015-11-10 10:40:41 +08:00
    不错,挺好的
    usapla
        37
    usapla  
       2015-11-10 10:45:49 +08:00
    恩,确实挺的社区,希望能保证密码的安全性,我注册个玩玩,
    raysmond
        38
    raysmond  
    OP
       2015-11-10 10:54:10 +08:00
    @usapla SpringSecurity 提供的 BCryptPasswordEncoder 加密密码存储的,绝不会存储明文。登录如果担心明文传输的话,可以使用访问 https://www.expper.com 进行登录。

    欢迎注册来玩玩。
    raysmond
        39
    raysmond  
    OP
       2015-11-10 10:57:38 +08:00
    @usapla
    @adoyle

    不仅仅是社区,我想做的是类似 pocket+分享社区。如果不玩社区的话,单纯使用 Chrome 插件和网站后台文章管理和阅读的话,也算一个 read it later 应用了。
    7Brant
        40
    7Brant  
       2015-11-10 11:15:27 +08:00
    挺棒的社区!
    raysmond
        41
    raysmond  
    OP
       2015-11-10 12:44:22 +08:00
    @7Brant 谢谢
    denger
        42
    denger  
       2015-11-10 16:21:33 +08:00
    如果长时间(30min 左右)停留在登录页上,之后再点登录的话,返回 403 :
    {"timestamp":"2015-11-10T08:15:42.870+0000","status":403,"error":"Forbidden","message":"Invalid CSRF Token '5cbaa188-5d8f-4e1f-bd57-95b14fa44215' was found on the request parameter '_csrf' or header 'X-CSRF-TOKEN'.","path":"/api/authentication"}

    应该是 Spring CSRF 是放在 Session 中的,如果 Session 过期则 csrf 失效,这时候再登录会认为该 csrf 无效,需要手工刷新页面,估计所有需要验证 csrf 的地方都有这个问题。
    raysmond
        43
    raysmond  
    OP
       2015-11-10 18:16:31 +08:00
    @denger 这是一个问题, csrf 应该要自动去刷比较好
    wee
        44
    wee  
       2015-11-10 19:37:17 +08:00
    注册啦,有 safari 插件就好啦~
    raysmond
        45
    raysmond  
    OP
       2015-11-10 19:47:00 +08:00
    @wee Safari 插件应该也不难,改改应该差不多
    leavic
        46
    leavic  
       2015-11-10 20:23:31 +08:00
    爬别人文章考虑过版权问题吗?
    raysmond
        47
    raysmond  
    OP
       2015-11-10 20:45:27 +08:00
    @leavic 文章只能用户自己可见,社区只展示标题和摘要。你觉得 pocket , evernote ,有道笔记这些应用保存文章如何考虑版权问题的?
    twoconk
        48
    twoconk  
       2015-11-10 20:48:03 +08:00
    两个星期弄出来, 效率很高呀:)
    raysmond
        49
    raysmond  
    OP
       2015-11-10 21:02:18 +08:00
    @leavic 我正在考虑不爬文章,直接从浏览器上传。服务器爬文章可能有点问题。
    HentaiMew
        50
    HentaiMew  
       2015-11-10 21:04:53 +08:00
    不错,问下你是上海那个学校的?
    raysmond
        51
    raysmond  
    OP
       2015-11-10 21:05:24 +08:00
    @twoconk 主要是 jhipster 和 spring boot 提供很高的敏捷性
    raysmond
        52
    raysmond  
    OP
       2015-11-10 21:05:39 +08:00
    @HentaiMew fudan
    HentaiMew
        53
    HentaiMew  
       2015-11-10 21:07:01 +08:00
    @raysmond 擦 我就知道。你现在是在读研究生吗 什么时候毕业?
    leavic
        54
    leavic  
       2015-11-10 21:16:51 +08:00
    @raysmond 你说的这些东西都是私人保存,并没有再次发布,当然不存在侵权。怎么采集不是关键,怎么使用才是关键。
    raysmond
        55
    raysmond  
    OP
       2015-11-10 21:18:37 +08:00
    @leavic 嗯。社区是绝不会公开文章全文,只展示标题,摘要和链接,就像 Reddit , Digg , Delicious 这种。全文都是用户私人保存起来查看的。
    raysmond
        56
    raysmond  
    OP
       2015-11-10 21:19:02 +08:00
    @HentaiMew 你又知道?
    HentaiMew
        57
    HentaiMew  
       2015-11-10 21:22:26 +08:00
    @raysmond 猜的... 能加下微信吗 我也在上海 之前回复过你几个帖子 不知道你记不记得
    raysmond
        58
    raysmond  
    OP
       2015-11-10 21:34:39 +08:00
    @HentaiMew 可以发送 email 与我交流 [email protected] ,微信不想公开在这里
    XianZaiZhuCe
        59
    XianZaiZhuCe  
       2015-11-10 21:48:16 +08:00 via Android
    手机打开这个页面真是感人
    HentaiMew
        60
    HentaiMew  
       2015-11-10 22:30:14 +08:00
    @raysmond 我觉得你对技术的整理很好 ,不过你可以接触下更深层次的东西。那些应用在大型系统架构中的东西。例如 RPC 形式的应用分布式、搜索引擎( Lucene 、 Solr )、大数据( Hadoop 、 Spark 、 Storm )、 JVM 的脚本语言 Groovy , JMS (例如: AMQ 或者你提到的不标准的 RMQ )以及一部分运维方面的东西,等。
    你是我在 V2 上见过的极少数 Java 学得比较遛的.... 哈哈 期待你的发展
    raysmond
        61
    raysmond  
    OP
       2015-11-10 22:36:04 +08:00
    @HentaiMew 我最近对分布式系统,大型网站架构,分布式缓存和队列,都有大的兴趣。 Lucene 和 Solr 都接触过,但还没有再生产环境中使用,后面我肯定是要加到 expper 中来的,不仅仅做全文检索,后面可能还要做语义搜索,计算相似度等。大数据和云计算实战的比较少,只写过简单的 Hadoop ,值得学习。

    我感觉 Java 并不过时,就我自己而言比较熟悉,但是不敢说学得溜,只是学到很多花哨的皮毛,并没有深入。只是今年才开始用 Java 做后台。 不过同时我对脚本语言例如 Python 和 Ruby ,还有 Go , Scala 等也挺感兴趣。
    HentaiMew
        62
    HentaiMew  
       2015-11-10 22:59:34 +08:00
    @raysmond 我个人是主攻 Java ,顺便安卓、 NodeJs 、 Groovy 并行发展,以前考虑过 Py ,同时考虑 Ruby ,但是对比后发现我更喜欢和赞同的是 Ruby ,然后去接触据说跟 Ruby 很相似的 Groovy ,于是就放弃了 Py 和 Ruby ,毕竟有 Java 这个强大而丰富的亲戚。
    Java 确实是属于全能型的,大数据、搜索、分布式、高并发、云计算、消息服务、异构通信啥啥的.... 太多领域它都太重要了,估计很多语言死了它都不见得会过时。
    Go 语言我也接触过,主要是玩 Docker 的时候接触的,除了少部分语法有点反人类的感觉,别的都还好,不过目前感觉还不够成熟,我也几乎没想过它能代替什么...
    raysmond
        63
    raysmond  
    OP
       2015-11-11 08:57:07 +08:00
    @HentaiMew 原来你才是 Java 大神,向您学习
    HentaiMew
        64
    HentaiMew  
       2015-11-11 09:52:46 +08:00
    @raysmond …想多了 我是属于奇葩类型的 我 18 岁就开始进公司实习了。。
    顺带也认识几个复旦的同行业的朋友。“大神”和“您”真是愧不敢当,我也只是刚起步的小菜鸟而已😶
    raysmond
        65
    raysmond  
    OP
       2015-11-11 16:43:07 +08:00
    @HentaiMew 实战经验多吧,你算是前辈了。

    有没有时间整理一些平常阅读的技术文章,可以专门是 java 相关的,分享在我的 expper 网站上?
    HentaiMew
        66
    HentaiMew  
       2015-11-11 18:44:17 +08:00
    @raysmond 我最近在几天在面试,其实没时间搞这些,有时间的话把我收藏的一些文章分享出来。
    不过其实类似我也开发过类似的好几个了,博客也是,不过最后都弃了。。。因为不断的接触新东西就会觉得曾经的设计和使用的技术太 low 了。

    还有啊,你那些 infoQ 的文章是抓取的吗?... 怎么有头没尾的,整句还没完就被拆分了,估计是你限制了字数吧...
    infoQ 上的文章其实都有明显的段落划分,一般取前几个 p 标签的内容就可以当个摘要信息了。
    这个系统是你一个人在开发吗?你要不要我加入你?
    raysmond
        67
    raysmond  
    OP
       2015-11-11 21:26:35 +08:00
    @HentaiMew 这个我主力开发,还会和实验室的师兄一起做,这个阶段还不需要人手。

    文章是抓取,考虑到版权问题,社区分享的文章只展示标题和摘要。只有会员自己可以看到全文。这个社区是想维护久一点的时间,去年开发的 Raysnote.com 笔记网站就维护得比较少了,现在懒得看了。
    raysmond
        68
    raysmond  
    OP
       2015-11-24 23:35:22 +08:00
    @HentaiMew 我已经把 expper 开源了: https://github.com/Raysmond/expper 。有兴趣的话可以来瞧瞧,甚至 pull requests 。
    xiaodaigou
        69
    xiaodaigou  
       2015-12-16 20:42:33 +08:00
    贵站不会关闭吧
    raysmond
        70
    raysmond  
    OP
       2015-12-16 21:59:14 +08:00
    @xiaodaigou 不会,这个网站准备长期维护。寒假有时间打算搞一个大功能,搞搞大动作
    xiaodaigou
        71
    xiaodaigou  
       2015-12-16 22:23:09 +08:00
    @raysmond 你这个不能自己发表文章,表示不开心呀。。。我想把自己博客文章收藏到里面,然后我就把博客关闭了。结果不能发表自己的文章,所以,只能我自己继续搞个博客了
    raysmond
        72
    raysmond  
    OP
       2015-12-16 23:22:50 +08:00
    @xiaodaigou 这个不是博客 /笔记类的网站,只是收藏和分享的功能。以后可能考虑支持新建文章的功能吧,没想好。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2720 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 110ms · UTC 15:31 · PVG 23:31 · LAX 08:31 · JFK 11:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.