diff --git a/ecosystem.config.js b/ecosystem.config.js new file mode 100644 index 0000000..6847796 --- /dev/null +++ b/ecosystem.config.js @@ -0,0 +1,18 @@ +module.exports = { + apps: [{ + name: "crm_app", + script: 'node_modules/next/dist/bin/next', // cluster mode run with node only, not npm + args: 'start -p 3003', + exec_mode: "cluster", // default fork + instances: "10", + kill_timeout: 4000, + wait_ready: true, + autorestart: true, + watch: false, + max_memory_restart: "1G", + log_date_format: "YYYY-MM-DD HH:mm Z", + env_prod: { + APP_ENV: 'prod' // APP_ENV=prod + } + }], +}; \ No newline at end of file diff --git a/src/core/components/DataTable.jsx b/src/core/components/DataTable.jsx index 32259fc..41bdbaa 100644 --- a/src/core/components/DataTable.jsx +++ b/src/core/components/DataTable.jsx @@ -29,7 +29,7 @@ function DataTable(props) { }); const [updateTime, setUpdateTime] = useState( - moment().format("HH:mm | jYYYY/jM/jD") + moment().format("HH:mm | jYYYY/jMM/jDD") ); const tableLocalization = useMemo( @@ -84,7 +84,7 @@ function DataTable(props) { }); useEffect(() => { - setUpdateTime(moment().format("HH:mm | jYYYY/jM/jD")); + setUpdateTime(moment().format("HH:mm | jYYYY/jMM/jDD")); }, [isValidating, languageApp]); return ( diff --git a/src/lib/app/contexts/socket.jsx b/src/lib/app/contexts/socket.jsx index 47154c8..7d51194 100644 --- a/src/lib/app/contexts/socket.jsx +++ b/src/lib/app/contexts/socket.jsx @@ -15,6 +15,7 @@ export const SocketProvider = ({children}) => { const t = useTranslations() const socket = useMemo(() => io(process.env.NEXT_PUBLIC_SERVER_SOCKET_URL, { autoConnect: false, + transports: ['websocket'], auth: { token: "" }