zen: rate limiter
This commit is contained in:
parent
2c36bf9490
commit
8df7ccc304
12 changed files with 7757 additions and 23 deletions
|
|
@ -0,0 +1,6 @@
|
|||
CREATE TABLE `key_rate_limit` (
|
||||
`key` varchar(255) NOT NULL,
|
||||
`interval` varchar(12) NOT NULL,
|
||||
`count` int NOT NULL,
|
||||
CONSTRAINT PRIMARY KEY(`key`,`interval`)
|
||||
);
|
||||
File diff suppressed because it is too large
Load diff
|
|
@ -0,0 +1 @@
|
|||
ALTER TABLE `key_rate_limit` MODIFY COLUMN `interval` varchar(20) NOT NULL;
|
||||
File diff suppressed because it is too large
Load diff
|
|
@ -0,0 +1 @@
|
|||
ALTER TABLE `key_rate_limit` MODIFY COLUMN `interval` varchar(40) NOT NULL;
|
||||
File diff suppressed because it is too large
Load diff
|
|
@ -20,3 +20,13 @@ export const IpRateLimitTable = mysqlTable(
|
|||
},
|
||||
(table) => [primaryKey({ columns: [table.ip, table.interval] })],
|
||||
)
|
||||
|
||||
export const KeyRateLimitTable = mysqlTable(
|
||||
"key_rate_limit",
|
||||
{
|
||||
key: varchar("key", { length: 255 }).notNull(),
|
||||
interval: varchar("interval", { length: 40 }).notNull(),
|
||||
count: int("count").notNull(),
|
||||
},
|
||||
(table) => [primaryKey({ columns: [table.key, table.interval] })],
|
||||
)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue