ARTS 第18周:反转字符串算法、数据库分片架构、Sharding-Sphere分库分表框架与MyCat分库分表实践

#coding#arts
目录

Algorithm

package org.nocoder.leetcode.solution;

import java.util.Stack;

/**
 * 344. Reverse String
 * Write a function that takes a string as input and returns the string reversed.
 * <p>
 * Example 1:
 * <p>
 * Input: "hello"
 * Output: "olleh"
 * Example 2:
 * <p>
 * Input: "A man, a plan, a canal: Panama"
 * Output: "amanaP :lanac a ,nalp a ,nam A"
 *
 * @author jason
 * @date 2018/11/4.
 */
public class ReverseString {
    public static String reverseString(String s) {
        if (s == null || s == "") {
            return null;
        }
        Stack<Character> stack = new Stack<>();
        for (int i = 0; i < s.length(); i++) {
            stack.push(s.charAt(i));
        }
        int len = stack.size();
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < len; i++) {
            sb.append(stack.pop());
        }
        return sb.toString();
    }

    public static void main(String[] args) {
        System.out.println(reverseString("A man, a plan, a canal: Panama"));
    }
}

Review

Shard (database architecture)

Challenges of Sharding MySQL

Tip

Sharding-Sphere

近期研究分库分表相关的知识整理和demo https://github.com/yangjinlong86/sharding

Sharding-JDBC定位为轻量级Java框架,在Java的JDBC层提供的额外服务。 它使用客户端直连数据库,以jar包形式提供服务,无需额外部署和依赖,可理解为增强版的JDBC驱动,完全兼容JDBC和各种ORM框架。

Share

Mycat 从入门到放弃

技术选型真的是个不简单的事情,考虑到方方面面,对于我们目前的现状,分库分表的计划是这样:

三思!大规模MySQL运维陷阱之基于MyCat的伪分布式架构

兼容MySQL的开源分布式数据库SequoiaDB在去哪儿网的实践


评论区