전체 글 11

GitHub Copilot Fusion 정식 출시: 작업에 맞춰 여러 AI 모델을 조율한다

한눈에 보기GitHub Copilot Fusion이 정식 출시됐습니다. 사용자가 매번 AI 모델을 직접 선택하지 않아도, 작업에 적합한 모델을 자동으로 선택하고 필요에 따라 여러 모델을 조율하는 기능입니다.AI 활용 방식이 단순한 코드 생성에서 작업별 모델 선택과 결과 검토를 자동화하는 방향으로 확장되고 있습니다.주요 특징1. 작업에 따른 모델 자동 선택사용자는 Standard, High, Max 중 추론 수준을 선택할 수 있습니다. Copilot Fusion은 요청의 난이도에 따라 하나 또는 여러 모델을 활용해 작업을 처리합니다.2. 모델 간 평가 및 검토필요에 따라 결과를 평가하고, 다른 모델이 검토하거나 수정하는 과정을 거칩니다. 이를 통해 작업의 복잡도에 맞춰 모델 사용과 결과 검토를 조율합니다...

ClickHouse Cloud가 실시간 분석에 강한 이유

한눈에 보기ClickHouse는 데이터 적재와 동시에 정렬 및 집계를 수행하고, 컬럼 지향 저장과 병렬 처리를 통해 분석 쿼리의 지연과 비용을 줄입니다. 또한 저장소와 컴퓨팅을 분리해 데이터 적재와 조회 자원을 독립적으로 확장할 수 있습니다.ClickHouse가 공개한 CostBench 벤치마크에서는 경쟁 플랫폼 대비 성능 대비 비용이 412~1,996배 높았다고 보고했습니다. 다만 특정 데이터와 쿼리 구성에서 나온 결과이므로 실제 환경에서 별도 검증이 필요합니다.핵심 기술1. 적재와 동시에 정렬 및 집계데이터 삽입 시 원본 데이터를 정렬하고, 증분형 Materialized View를 통해 요약 데이터도 함께 갱신합니다. 별도의 사후 정렬이나 집계 작업을 줄이고, 최신 데이터의 조회 가능 시점을 앞당길 ..

자바 클래스로더(Classloader)

클래스로더란?말 그대로 클래스를 로드하는 녀석클래스란? 사람이 이해할 수 있는 파일(java)를 JVM이 이해할 수 있는 파일(class)로 변환한 것.이 클래스 파일들은 클래스로더에 의해 JVM에 올라간다. 이 때 Java 클래스는 한 번에 메모리에 로드되지 않고 애플리케이션에서 필요할 때만 로드됩니다.클래스로더의 종류 - Bootstrap, Extention, System부트스트랩 클래스로더 (Bootstrap classloader)JVM 시작 시 가장 최초로 실행되는 클래스 로드클래스로더(java.lang.ClassLoader) 자체를 로드$JAVA_HOME/jre/lib 디렉토리의 rt.jar 및 기타 핵심 라이브러리를 로드부모 클래스로더를 갖지 않기 때문에 원시 클래스로더(Primordial c..

카테고리 없음 2024.10.10

그림으로 쉽게 이해하는 웹/HTTP/네트워크

2024년 10월 9일그림으로 쉽게 이해하는 웹/HTTP/네트워크1장 웹인터넷 인터네트워크(inter-network)의 줄임말로, 전 세계 컴퓨터를 하나로 연결한 네트워크하이퍼텍스트(Hypertext) 문서 내에서 다른 문서나 리소스로 연결될 수 있는 텍스트HTTP (Hypertext Transfer Protocol) 클라이언트(보통 웹 브라우저)와 서버가 웹 페이지를 주고받을 때 사용하는 통신 규약HTML (Hypertext Markup Lanuage) - 웹 페이지의 구조와 내용을 정의하는 데 사용되는 언어2장 미리 알아두면 좋은 네트워크 개념이론과 표준화에 중점을 둔 OSI 7계층 모델실용성에 초점을 둔 TCP/IP 4계층 모델네트워크에서 데이터 송수신 과정은 캡슐화(Encapsulation)와 역..

카테고리 없음 2024.10.09

자바의 역사, 핫스팟JVM, 자바의 미래

1.1 들어가며1.2 자바 기술 시스템1.3 자바의 과거와 현재1.4 자바 가상 머신 제품군 - 핫스팟 VM1.5 자바 기술의 미래1.1 들어가며자바는 엄격한 구조를 갖춘 객체 지향 프로그래밍 언어란 점 외에도 아래와 같은 장점들이 있다.하드웨어 플랫폼이라는 족쇄를 제거하여 `한 번 작성하면 어디서든 실행된다`상당히 안전한 `메모리 관리 시스템`을 갖춘 덕에 메모리 누수 문제와 엉뚱한 메모리를 가리키는 문제 대부분을 피할 수 있다.런타임에 핫 코드를 감지, 컴파일하고 최적화하여 최상의 성능을 내도록 도와준다.표준 API 자체가 풍부할 뿐 아니라 수많은 기업과 오픈 소스 커뮤니티에서 제공하는 다양한 기능의 서드 파티 라이브러리를 활용할 수 있다.1.2 자바 기술 시스템JRE(Java Runtime Envi..

개발 2024.09.22

[클릭하우스 ClickHouse] OS 서비스 계정 및 config, data, log 경로 변경하기

# 관련 파일/usr/bin/clickhouse/usr/share/bash-completion/completions/clickhouse/usr/share/clickhouse/etc/clickhouse-server (config)/var/lib/clickhouse (data)/var/log/clickhouse-server (log)공통작업 전에 ch 내리고 시작systecmtl stop clickhouse-server작업 이후 ch 정상 동작 확인systemctl daemon-reload systecmtl start clickhouse-server1) clickhouse를 서비스하는 OS 사용자계정 변경하기 (clickhouse -> adm)chown -R adm:adm /etc/clickhouse-ser..

개발 2024.07.30

'equals' between objects of inconvertible types 'Module' and 'String'

'equals' between objects of inconvertible types 'Module' and 'String'변환할 수 없는 유형 'Module'과 'String'의 개체 간 'equals' String 들을 Enum으로 변환하면서 기존 A에서 B형태가 되다보니 발생한 경고 - String.equals(String) - String.equals(Enum) 비교할 수 없음 Enum의 경우 == 로 비교해야 한다. - Enum == EnumString으로 비교하고 싶다면 Enum을 String으로 변경하자 - String.equals(Enum.name())

경고(Eng) 한 줄 2024.07.15

Caused by: org.apache.ibatis.binding.BindingException: Parameter '$param' not found. Available parameters are [arg1, arg0, param1, param2] - javac의 parameters 옵션 살펴보기

Caused by: org.apache.ibatis.binding.BindingException: Parameter 'sysId' not found. Available parameters are [arg1, arg0, param1, param2] 가끔씩 해당 오류가 발생하곤 했다. 일반적으로는 아래와 같이 Mapper 클래스의 메서드 파라미터의 변수명과 Mapper.xml에서 사용하는 변수명을 실수로 다르게 작성해서 발생하는 문제였어서 간단했다.Available parameters are [sysId, param1, param2] 하지만 종종 이름이 같음에도 BindingException이 발생하는 경우가 있었다.이에 대해 좀 더 알아보려고 한다. 문제의 상황은 아래와 같다.클래스와 매퍼 모두 sysId..

개발 2024.06.20