😚 Q & A website based on Spring Boot.
QA B/S
Spring Boot + MyBatis + MySQL + Redis + FreeMarker
salt + md5// ticket ticket id login_ticket ticket cookie
PassportInterceptor ticket ticket id
UGC (User Generated Content, ) HTML
HTML
<script>alert("hahah");</script>
class TrieNode {
//
boolean end;
//
Map<Character, TrieNode> subNodes = new HashMap<>();
//
void addSubNode(Character key, TrieNode node) {
subNodes.put(key, node);
}
// key
TrieNode getSubNode(Character key) {
return subNodes.get(key);
}
}
SensitiveWords.txt len h O(len*h)
****10100000 lenO(100000 * (len + 10))O(10 * len)
**** EntityType EntityId / EntityType EntityId
RedisWhy Redis
Redis MySQL:
Redis
Redis | ||
---|---|---|
List | ||
Set | ||
SortedSet | ||
Hash | ||
KV | PV |
Redis
"LIKE:ENTITY_TYPE:ENTITY_ID" key id value like unlike key id
xx/...
EventProducer (EventModel)(Redis List)EventConsumer EventHandler Handler
EventModel
class EventModel {
//
EventType type;
//
int actorId;
//
int entityType;
int entityId;
// Owner
int entityOwnerId;
//
Map<String, String> exts;
}
(/) EntityType EntityId Redis zset
Redis
/ Owner
feed
feed | ||
Timeline | feed | |
/ |
feed Timeline(redis list ) feed id feed
[ feed ]
pyspider
pip install pyspider
pyspider
pyspider
Jsoup``Jsoup``url``Document``CSS``V2EX``question``question``comment
Spring @Async
**** Spring @EnableAsync``@Async
request
IP
be a responsible crawler
(Indexing) (Search)
Solr Solr solr_cnAnalyzer