반응형

source 1023

socket.io 및 node.disc를 사용하여 특정 클라이언트에 메시지를 보냅니다.

socket.io 및 node.disc를 사용하여 특정 클라이언트에 메시지를 보냅니다. 저는 socket.io 및 node.debug와 함께 일하고 있는데, 지금까지는 꽤 괜찮은 것 같습니다만, 서버에서 특정 클라이언트로 메시지를 보내는 방법은 다음과 같습니다. client.send(message, receiverSessionId) 둘 다 .send() .broadcast()방법이 제 욕구를 채워주는 것 같아요 가 가능한 해결책으로 한 것은, 그 해결방법은, 「입니다..broadcast()method " 세션Id의 배열을 두 번째 파라미터로 받아들이기 때문에 메시지를 보내고 싶은 배열을 제외한 모든 SessionId가 연결된 배열을 서버에 전달할 수 있지만 더 나은 솔루션이 있어야 한다고 생각합니다. 좋..

source 2023.01.19

Vue 3에서 Vuex 4용 Web 소켓 플러그인 구현(소켓 라이브러리에 의존하지 않음)

Vue 3에서 Vuex 4용 Web 소켓 플러그인 구현(소켓 라이브러리에 의존하지 않음) Vue 3 어플리케이션이 Vue 4와 연동되어 있는데 Vuex를 통해 모든 웹 소켓 작업을 일원화하려고 합니다.이 튜토리얼을 따르고 있지만 Vuex 스토어에 플러그인을 연결할 수 없습니다.웹소켓 참조 가능한 한 독립적이어야 하므로 라이브러리나 소켓을 사용할 수 없습니다.IO: 플러그인 코드는 다음과 같습니다. var store = null var ws = null function startWebsocket() { ws = new WebSocket('socketURL') ws.onmessage = function (event) { console.log('webSocket: on message: ', event.data..

source 2023.01.19

JSON 키 이름에 유효한 문자와 유효하지 않은 문자는 무엇입니까?

JSON 키 이름에 유효한 문자와 유효하지 않은 문자는 무엇입니까? JavaScript 객체 또는 JSON 문자열에 대해 키 이름에 금지된 문자가 있습니까?아니면 탈출해야 하는 캐릭터? 좀 더 구체적으로 말하면, 키네임에는 "$", "-" 및 공백을 사용하고 싶습니다.아니요. 유효한 문자열은 유효한 키입니다.그것은 심지어 가질 수도 있다."도망치는 한: {"The \"meaning\" of life":42} 키를 개체 필드 이름에 연결하려고 하는 일부 언어에 이러한 값을 로드하는 데 문제가 발생할 수 있습니다.하지만 그런 경우는 전혀 모릅니다.문제를 방지하려면 다음 문자를 JSON 데이터로 이스케이프해야 합니다. "(큰따옴표) \(백슬래시) 다음과 같은 모든 제어 캐릭터\n,\t JSON 파서가 JSON..

source 2023.01.19

CLI를 사용하여 Wildfly에서 MariaDB 데이터 소스를 설정하는 방법

CLI를 사용하여 Wildfly에서 MariaDB 데이터 소스를 설정하는 방법 나는 와일드플라이에 정말 처음이고 아마도 이것은 멍청한 질문일 것이다.CLI를 사용하여 MariaDB 데이터 소스를 설정하려고 합니다.사용하고 있는 스크립트는 다음과 같습니다. module add --name=org.mariadb.jdbc --resources=mariadb-java-client-1.5.5.jar --dependencies=javax.api.javax.transaction.api /subsystem=datasources/jdbc-driver=org.mariadb.jdbc.Driver:add(driver-name=org.mariadb.jdbc.Driver,driver-module-name=org.mariadb.j..

source 2023.01.19

JavaScript 세트의 객체 동일성을 사용자 정의하는 방법

JavaScript 세트의 객체 동일성을 사용자 정의하는 방법 New ES 6(Harmony)에서는 새로운 Set 객체가 도입됩니다.Set에서 사용되는 ID 알고리즘은 다음과 같습니다.===연산자이므로 객체를 비교하기에 적합하지 않습니다. var set = new Set(); set.add({a:1}); set.add({a:1}); console.log([...set.values()]); // Array [ Object, Object ] 개체를 상세하게 비교하기 위해 개체 집합에 대한 동일성을 사용자 지정하는 방법은 무엇입니까?와 같은 요?equals(Object)업데이트 2022년 3월 현재 Javascript에 Records와 Tuples(기본적으로 불변의 Objects와 Arrays)를 추가하는 제..

source 2023.01.19

변수를 사용하는 인덱스가 있는 경우 MySQL 순위 지정

변수를 사용하는 인덱스가 있는 경우 MySQL 순위 지정 @N=@N + 1을 사용하여 정렬된 열의 항목 순위를 가져옵니다.주문하기 전에 다른 테이블과 내부 결합함으로써 기본 테이블에서 일부 값을 필터링해야 합니다.따라서 쿼리는 다음과 같습니다. SET @N=0; SELECT @N := @N + 1 AS rank, fa.id, fa.val FROM table1 AS fa INNER JOIN table2 AS em ON em.id = fa.id AND em.type = "A" ORDER BY fa.val ; 문제는 em.type에 인덱스가 없으면 모든 것이 정상적으로 동작하지만 em.type에 인덱스를 붙이면 hell이 해제되고 val column에 따라 순서가 매겨지지 않고 랭크 값이 em 테이블에 저장되..

source 2023.01.19

MySQL에서 utf8 깨진 문자 감지

MySQL에서 utf8 깨진 문자 감지 깨진 utf8 글자가 여러 테이블에 흩어져 있는 데이터베이스가 있어요The list of characters isn't very extensive AFAIK (áéíúóÁÉÍÓÚÑñ) 주어진 테이블을 고치는 것은 매우 간단합니다. update orderItem set itemName=replace(itemName,'á','á'); 그런데 깨진 글자를 어떻게 알아낼 수 있을지 모르겠어요.만약에 제가 이런 걸 하면 SELECT * FROM TABLE WHERE field LIKE "%Ã%"; 대조( all=a) 덕분에 거의 모든 필드를 얻을 수 있습니다.지금까지 깨진 모든 문자는 """로 시작한다.데이터베이스가 스페인어이므로 이 문자는 사용되지 않습니다. 내가 지금까..

source 2023.01.19

MySQL JOIN은 가장 최근의 행만 사용하시겠습니까?

MySQL JOIN은 가장 최근의 행만 사용하시겠습니까? customer_id, 이메일, 레퍼런스를 저장하는 테이블 고객이 있습니다.고객 변경 이력(새로운 행이 삽입된 경우)을 저장하는 추가 테이블 customer_data가 있습니다. 테이블에 고객 정보를 표시하려면 2개의 테이블을 결합해야 하지만 customer_data의 최신 행만 고객 테이블에 결합해야 합니다. 쿼리에 페이지 수가 지정되기 때문에 제한과 오프셋이 있다는 점에서 조금 복잡해집니다. MySQL에서는 어떻게 해야 하나요?어딘가에 DISTRIENT를 넣고 싶은데... 지금 질의는 이렇습니다. SELECT *, CONCAT(title,' ',forename,' ',surname) AS name FROM customer c INNER JOIN..

source 2023.01.19

프라이머리 키 없이 테이블을 만들고 프라이머리 키를 추가할 경우 프라이머리 키는 클러스터된 인덱스입니까?

프라이머리 키 없이 테이블을 만들고 프라이머리 키를 추가할 경우 프라이머리 키는 클러스터된 인덱스입니까? 인덱스 시작: 기본 키에서 다음과 같이 표시됩니다. InnoDB 테이블에서 모든 인덱스는 접미사로 기본 키를 포함합니다.따라서 이 스토리지 엔진을 사용할 때는 기본 키를 가능한 한 작게 유지하는 것이 특히 중요합니다.기본 키가 존재하지 않고 고유 인덱스가 없는 경우 InnoDB는 사용자에게 보이지 않는 6바이트 클러스터 인덱스를 생성합니다. 기본 키가 없으면 숨겨진 클러스터 인덱스로 테이블을 만듭니다.그리고 나중에 같은 섹션에서 몇 개의 단락에서 다음과 같이 설명합니다. CREATE INDEX 명령을 사용하여 기본 키를 생성할 수 없습니다.테이블이 이미 작성된 후에 추가할 경우 ALTER TABLE을..

source 2023.01.15

하위 쿼리에서 WHERE를 삭제할 수 없습니다.

하위 쿼리에서 WHERE를 삭제할 수 없습니다. MariaDB 10.4.12를 사용하여 DELETE 스테이트먼트를 실행하려고 합니다.이 스테이트먼트는 서브쿼리를 기반으로 합니다. DELETE FROM `mydb1`.`mytable1` WHERE `my_id` IN ( SELECT `TABLE_ID` FROM `TABLES_CT` WHERE `TABLE_NAME` = 'tableName'AND `TABLE_ACTION` IN ('D', 'U') ); 이 작업을 실행하면 30초 후에 타임아웃이 됩니다.information_schema.innodb_lockwaits 와 innodb_trx 를 보면, 같은 DELETE 스테이트먼트가 2개의 다른 스레드에서 차단되고 있습니다. SELECT로 실행하면 1밀리초 안에..

source 2023.01.15
반응형