본문 바로가기
  • 개발 삽질 블로그

전체 글89

API의 개념과 종류 API( Application Programming Interface)란? 응용프로그램에서 사용할 수 있도록 만든 인터페이스 서비스 간의 통신을 위해 사용 API 종류 1) SOAP API -그 자체로 프로토콜, stateful -XML을 데이터 포맷으로 사용 -캐시를 사용할 수 없음 -엄격한 통신 규약을 갖고 있으며, 모든 메세지는 보내지기 전에 알려져야함 -자체적인 ACID 기준이 있음, 데이터 손상 줄여줌 -WS-Security를 지원하기 때문에 보안 측면에서 엄격함 -많은 리소스 및 대역폭 필요 2) RESTAPI -아키텍처 스타일, stateless -데이터 위주, 직관적으로 CRUD 처리 -JSON, XML, HTML 등 다양한 데이터 포맷 사용 -캐시를 사용할 수 있음 -미리 알릴 필요 없음.. 2023. 9. 26.
웹 스토리지(Web Storage), 쿠키(Cookie) 쿠키란? -서버와 클라이언트 간의 지속적인 데이터 교환을 위해 만들어진 키-밸류 형식의 저장소 -클라이언트의 브라우저 메모리 혹은 하드디스크에 저장 -약 4KB까지 저장 가능, 유효기간 존 -서버에 전송되므로 크기가 클 경우 서버에 부담이 갈 수 있음(네트워크 트래픽 증가) -자동 전송으로 CSRF에 취약 웹 스토리지란? -쿠키와 비슷하게 데이터를 서버가 아닌, 클라이언트에 데이터를 저장할 수 있도록 지원하는 HTML5의 새로운 기능 -클라이언트 측에 이름-값 쌍을 저장 -약 5MB까지 저장 가능 -쿠키와 달리, 서버에 전송되지 않으므로 서버에 부담이 가지 않음 -CSRF에 안전 -서버의 DB에 저장하는 데이터에 비해 중요성이 낮거나 유실되어도 무방한 데이터를 저장 -단점: HTML 5를 지원하는 브라우.. 2023. 7. 29.
하둡 Hadoop MapReduce MapReduce?하둡 데이터 처리 프레임워크대용량 데이터를 분산 처리Map과 Reduce라는 함수 기반으로 주로 구성데이터를 특정 크기의 블록으로 나누고 각 블록에 대해 Map Task와 Reduce Task를 수행mapper->reducer    dataset의 변환으로 진행Mapper-처리한 데이터를 로 묶어줌-output: public static class Map extends Mapper{map output key type, map output value type>{ public void map(T key, T value, Context context) { //map 함수 정의 }} : 각각의 타입 지정 Shufflehadoop이 같은 key를 갖고 있는 data들을 모아 li.. 2023. 5. 16.
하둡(Hadoop) Hadoop?-대용량의 데이터를 분산처리해줄 수 있도록 해주는 아파치 톱 레벨 오픈소스 프로젝트-자바로 작성된 소프트웨어 프레임워크-크게 HDFS와 분산처리시스템(MapReduce), Hadoop Yarn, Hadoop Common으로 구성됨   Hadoop HDFSThe Google FileSystem이란 논문을 바탕으로 작성된 파일시스템파일을 여러개의 블록으로 나눠 저장한 데이터 블록을 보통 3군데에 저장파일의 내용을 바꾸려면 파일 전체를 새로 써야함하나의 NameNode와 여러 DataNode들로 구성  Hadoop MapreduceMapReduce:Simpligied Data Processing on Large Cluster라는 논문을 바탕으로 작성된 분산처리시스템 분산되어 저장된 데이터를 병렬 .. 2023. 5. 11.
Java Secure Coding Rule 소프트웨어의 중요성소프트웨어의 사소한 결함이 목숨을 빼앗아 갈 수도 있음! 소프트웨어 개발보안: 안전한 소프트웨어 개발을 위해 보안을 고려하여 기능을 설계 및 구현하고 잠재적인 보안취약점(보안약점)을 제거하는 소프트웨어 개발 과정에서의 일련의 보안활동 SSDL: SDL 단계마다 필수적인 보안과 무결성을 보증하는 소프트웨어 방법론 보안약점 vs 보안 취약점-보안약점(SW weekness): 해킹 등 실제 보안사고에 악용될 수 있는 보안 취약점의 근본 원인-보안 취약점(SW Vulnerability): 소프트웨어 실행 시점에 보안약점이 원인이 되어 발생하는 실제적인 위협 안전한 소프트웨어: 보안 기능을 수행하는 소프트웨어 X, 시스템을 신뢰할 수 있는 상태로 유지할 수 있도록 만들어진 소프트웨어  #Rule.. 2023. 4. 20.
백준 18870: 좌표 압축(JAVA)/ 좌표 압축 알고리즘 https://www.acmicpc.net/problem/18870 18870번: 좌표 압축 수직선 위에 N개의 좌표 X1, X2, ..., XN이 있다. 이 좌표에 좌표 압축을 적용하려고 한다. Xi를 좌표 압축한 결과 X'i의 값은 Xi > Xj를 만족하는 서로 다른 좌표의 개수와 같아야 한다. X1, X2, ..., XN에 좌 www.acmicpc.net 알고리즘 분류를 보면 정렬과 좌표 압축으로 분류가 되어있다. 좌표압축 알고리즘 -좌표(문제)의 범위가 너무 넓을 때 각 좌표에 인덱싱을 하여 좌표 사이 간격을 없앰 -중요한 구간이나 숫자만 갖고 가는 것 -불필요한 좌표를 날리기 or 데이터 자체를 압축 하기 -대소관계만 알면 될 때 사용함 데이터를 정렬해서 다시 순서를 부여 HashMap을 이용하.. 2023. 2. 1.