Code Monkey home page Code Monkey logo

jiangfengyuhuo / community Goto Github PK

View Code? Open in Web Editor NEW

This project forked from cosen1024/community

0.0 1.0 0.0 887 KB

一个仿照牛客网实现的讨论社区,不仅实现了基本的注册,登录,发帖,评论,点赞,回复功能,同时使用前缀树实现敏感词过滤,使用wkhtmltopdf生成长图和pdf,实现网站UV和DAU统计,并将用户头像等信息存于七牛云服务器。

License: Apache License 2.0

Java 53.67% CSS 0.57% HTML 44.08% JavaScript 1.68%

community's Introduction

项目介绍

一个仿照牛客网实现的讨论社区,不仅实现了基本的注册,登录,发帖,评论,点赞,回复功能,同时使用前缀树实现敏感词过滤,使用wkhtmltopdf生成长图和pdf,实现网站UV和DAU统计,并将用户头像等信息存于七牛云服务器。

其他项目

项目演示

演示地址: http://coolsen.cn/
账号密码: aaa/aaa

技术选型

功能简介

  • 使用Spring Security 做权限控制,替代拦截器的拦截控制,并使用自己的认证方案替代Security 认证流程,使权限认证和控制更加方便灵活。
  • 使用Redis的set实现点赞,zset实现关注,并使用Redis存储登录ticket和验证码,解决分布式session问题。
  • 使用Redis高级数据类型HyperLogLog统计UV(Unique Visitor),使用Bitmap统计DAU(Daily Active User)。
  • 使用Kafka处理发送评论、点赞和关注等系统通知,并使用事件进行封装,构建了强大的异步消息系统。
  • 使用Elasticsearch做全局搜索,并通过事件封装,增加关键词高亮显示等功能。
  • 对热帖排行模块,使用分布式缓存Redis和本地缓存Caffeine作为多级缓存,避免了缓存雪崩,将QPS提升了20倍(10-200),大大提升了网站访问速度。并使用Quartz定时更新热帖排行。

开发环境

工具 版本号 下载
JDK 11 https://openjdk.java.net/install/
Mysql 5.7 https://www.mysql.com/
Redis 3.2 https://redis.io/download
Elasticsearch 6.4.3 https://www.elastic.co/downloads
Kafka 2.3.0 https://kafka.apache.org/downloads
nginx 1.10 http://nginx.org/en/download.html

运行效果展示

  • 首页
  • 消息

后续更新点

  • 增加收藏功能
  • 增强对话框功能

相关资源

相关的教程:网盘提取码:wxdd

community's People

Contributors

cosen1024 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.